How might Meteor be the perfect solution for your next idea?

Meteor makes building web and mobile applications way easier. Let's take a look how it can make creating them a whole lot more enjoyable too!

Rapid prototyping

Meteor doesn't get in your way (until you need it to be)

Meteor allows you to express your ideas without concern over the details, it's nice not having to think about that stuff while you're busy creating something. You can get into that when you're ready to. This makes it possible to put together a working prototype in just a few hours.

The default Meteor application

Typically, other frameworks require you to make a bunch of technical decisions early on, before you're interested in thinking about them. This can be a little inhibiting.

The new Todo's example app coming in 0.9.4

With Meteor you write much of your app in a declarative style. Basically, you spend more time writing your app and less time writing boilerplate code. It also takes care of all the work involved with updating your templates when things change. Your page updates in real-time, without you even having to really think about it.

Packages

Currently (at the time of writing) there's close to 2000 packages available, which you can add to your app by running meteor add <package> .

Say you're after less or stylus ? meteor add less . Also in development when you save your changes, your browser automatically updates the styles without reloading.

To find Meteor packages you can run meteor search <package> or (much better) visit Atmosphere.

A couple of useful real-world packages:

Iron Router

https://atmospherejs.com/iron/router

Collection Helpers (Models)

https://atmospherejs.com/dburles/collection-helpers

Schema

https://atmospherejs.com/aldeed/simple-schema

When you're ready...

Ready to show off your app? Type in meteor deploy my-awesome-app and it will upload and be available entirely for free at my-awesome-app.meteor.com. Which you can then tweet/fb/g+/ello/snail-mail to everyone!

Beyond a mere prototype

Let's run meteor remove autopublish and meteor remove insecure

Set up some allow and perhaps deny rules. Meteor.methods are a good approach if your insert/updates are complex. We can be specific with publishing only the data each client needs to see.

A real Meteor application

You've now set up publications, allow/deny rules are in place, you've created methods, searched Atmosphere, added a bunch of packages, (maybe even created and published your own). Your app is ready for production.

[versoapp.com](Verso App)

The next step is to deploy your application. While Galaxy is in development, for deployment outside of meteor.com you can either roll your own solution, or make use of Arunoda's Meteor Up which is a command line tool that assists you with deploying to your own server.

Mobile Meteor

Meteor 0.9.2 came with support for building mobile apps, with both iOS and Android.

With just a few commands you can add PhoneGap / Cordova packages to your app to access native device APIs.

Sous

Launch the app in the iOS or Android simulator, run it on an attached hardware device and package it up for submission to Apple's App Store and to Google Play!

Read the announcement information.

Conclusion

Meteor is a new platform that allows people of almost any skill level to start building their ideas. From experts, to those who have only just started learning programming.

From the most basic prototype hacked together in literally minutes, to a production ready web application. Meteor has been designed with this type of flexibility in mind.

I love working with Meteor and I hope you will too.

Learning resources