8. 238Presentation by Almog Koren • Jun 11, 2015
WHAT IS METEOR?
• Open source platform for building web and mobile (Cordova)
apps in JavaScript
• Built to power the next generation of apps
• Rich user interfaces
• Collaborative multi-user applications
• Cross-platform apps (web, IOS, Android)
• Fast development
9. 239Presentation by Almog Koren • Jun 11, 2015
HOW MODERN APPS LOOK & FEEL
• Focus on your app’s unique features instead of wrangling
network code, websocket, etc.
• Meteor’s Goal: Facebook-quality apps without
Facebook’s money
12. 2312Presentation by Almog Koren • Jun 11, 2015
• We needed to be able to move fast
(prototyping)
• Database, server and web interface
• Connect different devices
• Native or Cordova at some point
• Real-time and reactive
WHY WE CHOOSE METEOR
13. 2313Presentation by Almog Koren • Jun 11, 2015
METEOR DDP
• Distributed Data Protocol which is like "REST for websockets”
• A simple protocol for fetching structured data from a server, and
receiving live updates when that data changes.
• https://github.com/delight-im/Android-DDP
• https://github.com/kenyee/android-ddp-client
17. 2317Presentation by Almog Koren • Jun 11, 2015
USING DDP
• Deleting data from a collection
• Subscribing to data from the server
• Creating a new account (requires accounts-password package)
19. 2319Presentation by Almog Koren • Jun 11, 2015
WHAT IS METEOR
• A library of packages: pre-written, self-contained modules that you might need
in your app.
• A command-line tool called meteor.
• Built on Node.JS (Fibers)
• Mongo DB
• Structured framework
• Easy to learn
• Real-time or Reactivity
• Community
20. 2320Presentation by Almog Koren • Jun 11, 2015
WHAT IS METEORJS
PURE JAVASCRIPT
Write your entire app in pure
JavaScript.
LIVE PAGE UPDATES
Just write your templates.
DATA SYNCHRONIZATION
No more loading your data
from REST endpoints.
21. 2321Presentation by Almog Koren • Jun 11, 2015
WHAT IS METEORJS
LATENCY
COMPENSATION
Immediate updates no waiting
for the server.
HOT CODE PUSHES
Update your app while users
are connected.
PRIVILEGED
ENVIRONMENT
Write all of your code in
JavaScript.
22. 2322Presentation by Almog Koren • Jun 11, 2015
WHAT IS METEORJS
APPLICATION BUNDLES
One command to compile your
entire application into a tarball..
INTEROPERABILITY
You can connect anything to
Meteor.
SMART PACKAGES
Templating, testing, or DOM
manipulation frameworks.
23. 2323Presentation by Almog Koren • Jun 11, 2015
OneLanguage
JavaScript
Latency
compensation
Embrace
The Ecosystem
Data
on the wire
Database
everywhere
FullStack
Reactivity
Simplicity
Equals Productivity
24. 2324Presentation by Almog Koren • Jun 11, 2015
COMPONENTS / DEEP DIVE
• LiveQuery – Realtime database queries
• DDP – Subscribe to changes in the database
• MiniMongo – Run database queries on the client
• Tracker – Rerun functions when data changes
• Blaze – Keep the view up-to-date with your data
http://meteor.com/projects
25. 2325Presentation by Almog Koren • Jun 11, 2015
DEMO
Meteor Publish / Subscribe, Meteor Methods and Allow / Deny
26. 2326Presentation by Almog Koren • Jun 11, 2015
CHOOSING
METEOR
The Community, App and getting started
28. 2328Presentation by Almog Koren • Jun 11, 2015
WORKPOP - BUILT ON METEOR
• Raised $7.9 million Series A led by Trinity Ventures
“the most rapid prototyping, iteration and development we’ve ever
seen from an early stage company”
29. 2329Presentation by Almog Koren • Jun 11, 2015
GROWING RAPIDLY
• Over 150 meetup groups around the world –
meteor.meetup.com
• Over 2000 community-authored packages -
atmospherejs.com
• Discover Meteor has made over $300,000 in book sales (as of
Sept. 2014)
• Ranked #11 on GitHub (just passed Backbone, will soon pass
Rails)