Meteor
Full Stack Javascript Made Easy
Joshua Cope
What is Meteor?
A free open source platform built
on top of Node.js that makes it
dramatically faster to write rich
realtime web applicati...
It's what sits between your app's
database and its user interface and
makes sure that both are kept in sync.
How to think ...
Live Page Updates
• Just write your templates.
• Automatically update when database changes.
• Supports any templating lan...
DDP (Distributed Data Protocol)
• A standard way to solve the biggest problem
facing client-side JavaScript developers:
• ...
Publications/Subscriptions
!
Every Meteor client includes an in-memory database cache.

• To manage the client cache, the ...
Features
Hot Code Pushes
• Update your app while users are connected
without disturbing them.
!
Latency Compensation
• Whe...
Security
• In Meteor, the client and server share the same
database API.
• Code running on the server has direct access to...
Databases
• Each Meteor app comes with it’s own
MongoDB Instance.
• Meteor currently only supports Mongo.
• Future Support...
Smart Packages
• Little programs that can inject code into the client or
the server.
• You can continue use your favorite ...
Meteor Accounts
• A smart package for accounts.
• Includes pre-built components for common tasks like
login, signup, passw...
Atmosphere
https://atmospherejs.com
• A Meteor package manager.
• Allows you to install 1000s of packages from the
communi...
Testing
http://arunoda.github.io/laika/
http://xolvio.github.io/rtd/
• Incredibly easy to create real time applications
• One Language, only need to use Javascript
• Large community package s...
curl https://install.meteor.com | /bin/sh
How to get started?
Install
Create Application
meteor create HelloWorld
cd Hello...
Questions?
Upcoming SlideShare
Loading in …5
×

Introduction to Meteor: UAlbany Open Source Festival 2014

881 views
730 views

Published on

Published in: Software
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
881
On SlideShare
0
From Embeds
0
Number of Embeds
241
Actions
Shares
0
Downloads
15
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Introduction to Meteor: UAlbany Open Source Festival 2014

  1. 1. Meteor Full Stack Javascript Made Easy Joshua Cope
  2. 2. What is Meteor?
  3. 3. A free open source platform built on top of Node.js that makes it dramatically faster to write rich realtime web applications in pure JavaScript.
  4. 4. It's what sits between your app's database and its user interface and makes sure that both are kept in sync. How to think of it?
  5. 5. Live Page Updates • Just write your templates. • Automatically update when database changes. • Supports any templating language. No more refreshing!
  6. 6. DDP (Distributed Data Protocol) • A standard way to solve the biggest problem facing client-side JavaScript developers: • Querying a server-side database, sending the results down to the client, and then pushing changes to the client whenever anything changes in the database. • Supported on newer browsers using WebSockets and on older browsers using Asynchronous JavaScript + XML (Ajax) long polling
  7. 7. Publications/Subscriptions ! Every Meteor client includes an in-memory database cache. • To manage the client cache, the server publishes sets of JSON documents, and the client subscribes to those sets. • As documents in a set change, the server patches each client's cache.
  8. 8. Features Hot Code Pushes • Update your app while users are connected without disturbing them. ! Latency Compensation • When a user makes a change, their screen updates immediately. If the server rejects their request or executes it differently, the client is patched up with what actually happened.
  9. 9. Security • In Meteor, the client and server share the same database API. • Code running on the server has direct access to the database, code running on the client does not. • By default, a new Meteor app includes the autopublish and insecure packages, which together mimic the effect of each client having full read/write access to the server's database.
  10. 10. Databases • Each Meteor app comes with it’s own MongoDB Instance. • Meteor currently only supports Mongo. • Future Support coming for SQL and other Databases.
  11. 11. Smart Packages • Little programs that can inject code into the client or the server. • You can continue use your favorite templating, testing, or DOM manipulation frameworks.
  12. 12. Meteor Accounts • A smart package for accounts. • Includes pre-built components for common tasks like login, signup, password reset, and verification emails. • Easy to add and easy to setup external services.
  13. 13. Atmosphere https://atmospherejs.com • A Meteor package manager. • Allows you to install 1000s of packages from the community through the Atmosphere package repository.
  14. 14. Testing http://arunoda.github.io/laika/ http://xolvio.github.io/rtd/
  15. 15. • Incredibly easy to create real time applications • One Language, only need to use Javascript • Large community package system, allows for use of Meteor packages and NPM packages. Why use this over Ruby and Rails, Python and Django or another language and framework?
  16. 16. curl https://install.meteor.com | /bin/sh How to get started? Install Create Application meteor create HelloWorld cd HelloWorld meteor => Meteor server running on: http://localhost:3000/ Supported Platforms: Linux & Mac Deploy meteor deploy osf2014.meteor.com
  17. 17. Questions?

×