29 July 2013

Meteor is a really cool framework that runs on top of Node.js, it gives the developer ability to build apps in hours in what usually take days like this Bicycle Alarm App that I build over the weekend. But in a real world nothing is perfect like deploying a Meteor app to a proper host and most Platform-As-A-Service providers doesn't readily support apps built on Meteor so it's really a pain in the b*tt. What could be hours of development fun will be wasted on hours of fixing dependencies and all crap that is related more than the code but rather on the hosting config. So I made a few pointers on how to survive your first flight with Meteor.
1. When deploying your app other than on meteor.com, Demeteorize it with https://github.com/onmodulus/demeteorizer
2. Update the package.json so that the Node.js version is compatible with PaaS hosting's version
3. Make sure your app's root directory includes a Procfile that declares where your main.js is
4. properly set the hosting's environment variables like MONGO_URL, PORT etc.
Some of the non-Meteor PaaS I tried with success:
Heroku, Modulus, Nodejitsu
Enjoy!