Meteor.js is an open-source full-stack JavaScript framework for building modern web and mobile applications. It allows apps to be more responsive through latency compensation, have built-in collaboration features through live updates, and be easier and faster to write through its principles of one language, database everywhere, and hot code pushing. Apps built with Meteor can also be easily compiled for multiple platforms including web and mobile.
2. Michael Elfassy
twitter: @michaelelfassy
github: elfassy
stackoverflow: montrealmike
website: smashingboxes.com
Durham, NC | San Francisco | Montreal
6. Yes! In fact you’ll build apps that:
● are more responsive
● have built-in collaboration
● are more fun (and faster) to write
● support hot code push
● are easily compiled for multiple platforms
9. How does it work?
An can you justify those bold claims
10. 7 principles of meteor
● Data on the Wire
● One Language
● Database Everywhere
● Latency Compensation
● Full Stack Reactivity
● Embrace the Ecosystem
● Simplicity Equals Productivity
11. Apps feel responsive
Latency compensation
● Database everywhere
● One language
● Data on the wire (aka: Client side rendering)
BONUS:
No network
compensation
http://manning.com/hochhaus/Meteor_MEAP_CH01.pdf
12. Apps have built-in collaboration
Full-stack reactivity
● Livequery - Watch DB for changes
● DDP - Send data back and forth to the client
o replay cache
o publish / subscribe
● MiniMongo - store data and do database queries on the client
● Tracker
o recomputation is done automatically
o view updates with no extra code
● Blaze - rendering
Read more about these components on meteor.com/projects
13. Database, Security, Business Logic, User interactions
Rendering
HTTP / HTML
Database, Security, Business Logic Rendering, User interactions
HTTP / XML (AJAX)
DDP / JSON
Rendering, User interactions,
Security Business Logic, Database
1995
2005
2014
14. Apps are more fun / faster to write
● One language
o share code between client and server (DRY)
o Write less code
● Embrace the ecosystem
o Packager
o http://atmospherejs.com
● Simplicity (KISS)
o all the components, not just a library to solve one problem
o configuration-free minifier, deployer...
o no need to write code to update the view
o no need to write code to sync data
15. Apps auto-reload
● Hot code push
o don’t lose your user’s state
o work even when adding new packages
● Bypass Apple!
o use wisely
16. Apps that are cross platform
demo!
> meteor run ios
> meteor run android
17. Don’t be a dinosaur
Your clients expect:
● apps that feel native
● collaborative apps
● you to write these apps in days,
not months