#How do I become a web app developer - Meteor style
What does an aspiring web developer need to know to develop a Meteor app? Below is a list of languages, frameworks, libraries, packages & more ;) .
The lists that follow are purposely ordered, unless noted. This article does not explain why you need to learn each item (that is up to you to figure out). Instead this article's purpose is to provide a quick roadmap or "thousand mile" view of the technologies a Meteor Dev works with daily.
When you are in the weeds of learning new things it feels good knowing you have a map to reference and measure your progress against.
Ultimately you need to be able to understand Meteor's API. Getting a grasp of the technologies listed below will give you what you need. There is no need to become an expert yet but you need to understand the structure and terminology of each.
Don't know what an API is? Check out this dude's video
- Javascript - JS first?! Yes soldier, don't question me again or I will karate chop you!
- Shell (Terminal)
- HTML & CSS
- JSON
- MongoDB
- Handlebars
- Git & GitHub
- jQuery
- LESS and/or SASS
- Underscore and/or Lo-Dash
- Bootstrap
- Cordova
- ElasticSearch
- Ionic - Meteor Package Meteoric
Now that you know the above you are deemed worthy to tap into the power and awesomeness of Meteor!
Why did you need to learn ALL that stuff above before touching Meteor? Because Meteor is considered a Full-Stack platform. Through Meteor you manage the front-end, back-end and all the other ends.
...Okay no more question, lets learn MORE!
Time to become a Meteor nerd, review the docs.
If the sub-projects look intimidating don't worry. At a minimum below are the key packages in the sub-projects you need to know.
Ordered by difficulty & depth. These tutorials, courses, books & videos will walk you through various Meteor projects. Everything you learned above will culminate.
- Meteor's official tutorial (FREE)
- Your First Meteor Application by David Turnbull (FREE)
- Meteor Walkthrough Videos by George McKnight (FREE)
- Discover Meteor by Sacha Greif & Tom Coleman ($ to $$)
- Meteor in Action by Manuel Schoebel & Stephan Hochhaus ($)
- Meteor Testing by Sam Hatoum ($)
- Meteor Club Master Bootcamp by Josh Owens ($$$)
- Meteor Club Testing Bootcamp by Josh Owens & Sam Hatoum ($$$)
- Bulletproof Meteor by Arunoda Susiripala ($ to $$)
- Advance courses at Evented Mind by Chris Mather ($$)
Yes there is even more to learn. Meteor has a package manager called Atmosphere which allows the community to build packages that deeply integrate into the Meteor platform and expands the APIs available to you, the developer. Below is a list of the standard packages you will find in almost every serious Meteor app so you should get to know them.
Package Name | GitHub | Atmosphere | Website |
---|---|---|---|
accounts-password | github | atmosphere | website |
useraccounts:core | github | atmosphere | website |
reactive-var | atmosphere | website | |
reactive-dict | atmosphere | ||
iron:router | github | atmosphere | guide website |
zimme:iron-router-active | github | atmosphere | |
zimme:iron-router-auth | github | atmosphere | |
manuelschoebel:ms-seo | github | atmosphere | article |
dburles:collection-helpers | github | atmosphere | |
matb33:collection-hooks | github | atmosphere | |
reywood:publish-composite | github | atmosphere | website |
ongoworks:security | github | atmosphere | |
alanning:roles | github | atmosphere | website |
aldeed:autoform | github | atmosphere | |
aldeed:collection2 | github | atmosphere | |
aldeed:simple-schema | github | atmosphere | |
momentjs:moment | github | atmosphere | website |
matteodem:easy-search | github | atmosphere | website |
matteodem:server-session | github | atmosphere | |
meteorhacks:kadira | github | atmosphere | website |
meteorhacks:aggregate | github | atmosphere | |
meteorhacks:fast-render | github | atmosphere | website |
meteorhacks:subs-manager | github | atmosphere | |
meteorhacks:unblock | github | atmosphere | |
raix:handlebar-helpers | github | atmosphere | |
yogiben:helpers | github | atmosphere | |
zimme:collection-softremovable | github | atmosphere | |
zimme:collection-timestampable | github | atmosphere | |
u2622:persistent-session | github | atmosphere | |
tmeasday:publish-counts | github | atmosphere | |
percolatestudio:synced-cron | github | atmosphere | |
dburles:factory | github | atmosphere | |
anti:fake | github | atmosphere |
Wow, you must really be committed if you got this far. Ok, so you want my super secret lists?
When you go to deploy your app online there are a huge amount of service providers available to a developer. Below are a few that specifically serve the Meteor community (and do a great job) so I decided to give them a shout.
Come drink the Meteor cool-aid with me... look we won't be alone.
- Crater.io - News Aggregate
- Meteor Weekly - News Aggregate
- Meteor's Official Blog - Blog
- Josh Owens - Blog
- Discover Meteor - Blog
- The Meteor Chef - Blog
- Differential - Blog
- Gentlenode - Blog
- MeteorHacks - Blog
- Meteor Tips - Blog
- PEM - Blog
- Manuel Schoebel - Blog
- Practical Meteor - Blog
- The Meteor Podcast - Podcast
- Meteor Devshops - YouTube
- Josh Owens - YouTube
- George McKnight - YouTube
- Arunoda Susiripala - YouTube
- David Turnball - YouTube
- Sasi Kanth - YouTube
- Vianney Lecroart - Medium
- Space Camp - Medium
- Dominus - Medium
- Arunoda Susiripala - Medium
- Sacha Greif - Medium
- Paul van Zyl - Medium
If I forgot someone let me know @_benstr
- Best Learning Resources for Meteor.js by Stephan Hochhaus
- Learn Meteor.js Properly by Richard ?
Perfect Meteor onboarding