Cordova projects often have a different set of files than web targets,
so we would like to be able to target different client architectures in
our bundles. Ideally, we allow the user to use arbitrary client
architectures - but this patch is a step in the right direction by
abstracting out more of the hard coded "browser"/"os" lines.
We accomplish this separation in a backwards compatible way by allowing
api.___ commands to target a "client" architecture. For example,
api.addFiles('a.js', 'client') adds 'a.js' to both the 'client.browser'
and 'client.cordova' targets.
Effects on 0.9 packaging stuff: packages don't have to change, but the
"data.json" file in ".meteor0" has "browser" in some places. We think we
have to fix the troposphere code where this data.json is created.
Some plugins will also be backwards-incompatible with this change, since
many have a "clientArch.matches("browser")" line in the plugin
code. Ideally, we fix plugins so that this stops being an issue, but for
now package authors can just patch that line.
At the compiled (unipackage) level the new names are 'web.browser' and
'web.cordova', replacing 'browser'. In package.js, the new names are
'client.browser' and 'client.cordova', serving as an adjunct to 'client'.
Meteor
Meteor is an ultra-simple environment for building modern web applications.
With Meteor you write apps:
- in pure Javascript
- that send data over the wire, rather than HTML
- using your choice of popular open-source libraries
Documentation is available at http://docs.meteor.com/
Quick Start
Install Meteor:
curl https://install.meteor.com | /bin/sh
Create a project:
meteor create try-meteor
Run it:
cd try-meteor
meteor
Deploy it to the world, for free:
meteor deploy try-meteor.meteor.com
Slow Start (for developers)
If you want to run on the bleeding edge, or help develop Meteor, you can run Meteor directly from a git checkout.
git clone git://github.com/meteor/meteor.git
cd meteor
If you're the sort of person who likes to build everything from scratch, you can build all the Meteor dependencies (node.js, npm, mongodb, etc) with the provided script. This requires git, a C and C++ compiler, autotools, and scons. If you do not run this script, Meteor will automatically download pre-compiled binaries when you first run it.
# OPTIONAL
./scripts/generate-dev-bundle.sh
Now you can run meteor directly from the checkout (if you did not build the dependency bundle above, this will take a few moments to download a pre-build version).
./meteor --help
From your checkout, you can read the docs locally. The /docs directory is a
meteor application, so simply change into the /docs directory and launch
the app:
cd docs/
../meteor
You'll then be able to read the docs locally in your browser at
http://localhost:3000/
Note that if you run Meteor from a git checkout, you cannot pin apps to specific
Meteor releases or run using different Meteor releases using --release.
Uninstalling Meteor
Aside from a short launcher shell script, Meteor installs itself inside your home directory. To uninstall Meteor, run:
rm -rf ~/.meteor/
sudo rm /usr/local/bin/meteor
Developer Resources
Building an application with Meteor?
- Announcement list: sign up at http://www.meteor.com/
- Ask a question: http://stackoverflow.com/questions/tagged/meteor
- Meteor help and discussion mailing list: https://groups.google.com/group/meteor-talk
- IRC:
#meteoronirc.freenode.net
Interested in contributing to Meteor?
- Core framework design mailing list: https://groups.google.com/group/meteor-core
- Contribution guidelines: https://github.com/meteor/meteor/tree/devel/Contributing.md
We are hiring! Visit https://www.meteor.com/jobs/working-at-meteor to learn more about working full-time on the Meteor project.