Successfully reported this slideshow.

A Quick Overview of Derby and Meteor (for 5/9 Node.js DC Meetup)

0

Share

Upcoming SlideShare
What to Upload to SlideShare
What to Upload to SlideShare
Loading in …3
×
1 of 15
1 of 15

A Quick Overview of Derby and Meteor (for 5/9 Node.js DC Meetup)

0

Share

Download to read offline

Derby.js & Meteor.js - Two new frameworks for building Realtime, Data Synchronized, HTML Templated, Node.js Web Applications

Blog post at http://studgeek.com/2012/05/10/nodejs-meteorjs-derbyjs-nodedc

Derby.js & Meteor.js - Two new frameworks for building Realtime, Data Synchronized, HTML Templated, Node.js Web Applications

Blog post at http://studgeek.com/2012/05/10/nodejs-meteorjs-derbyjs-nodedc

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

A Quick Overview of Derby and Meteor (for 5/9 Node.js DC Meetup)

  1. 1. Derby & Meteor Two new frameworks for building… Realtime Data Synchronized HTML Templated Node Web Applications David Rees @studgeek 5/9/12 about.me/studgeek Node DC Meetup
  2. 2. Intro • Not a lot of time so this is quick look • Focusing on the concepts and key features • (Not implementation/details)
  3. 3. Core Features • Model-Bound HTML Templates • Common Language, Packages and APIs (Server/Client) • Common, Synchronized Model State • Live Rendering • Complete Development Framework • MIT License (both)
  4. 4. Common, Synchronized Model State • Clients, Server, and database all share a common state • Changes anywhere are synchronized everywhere • Models are created, searched, and updated the same way everywhere • Subscriptions manage what data is propagated where • M (in VC) is virtualized everywhere
  5. 5. Live Rendering • Synchronized State pushes changes to all db/servers/browsers • Data-bound templates recognize changes in dependent data • HTML is magically updated everywhere • V is generated on server, lives on client • C is distributed and automatic • <demo>
  6. 6. Templating - Meteor • Specific template approach • Uses knockout/angular-style property bindings • Specific parts are updated as the model properties change (like Knockout)
  7. 7. Templating - Derby • Specific template approach • Uses knockout/angular-style property bindings • Specific parts are updated as the model properties change (like Knockout)
  8. 8. Complete Development Framework • All the core packages need to build a web application are included and integrated • Node.js, Express, Socket.IO, MongoDB, Handlebars, Stylus, CoffeeScript • Derby – Redis • Meteor - Fibers
  9. 9. Derby: Server-Side Template Rendering • Pages are rendered on server as HTML and then pushed to client • They are then bound to the data on client (knockout/angular style) • SEO friendly (try searching for meteor.com) • Probably more mobile friendly (and definitely faster) • Meteor plans to implement
  10. 10. Derby: Routes • Routes are defined Express/Sinatra style • Initially generated on server and pushed to client • Subsequent route accesses reuse client HTML • Transitional routes support in-page updates (CSS animations) • Form submits can be captured and used on client
  11. 11. Derby: Misc • Conflict Resolution • Normal NPM Packages
  12. 12. Meteor: Full Build/Package Environment • They have big plans :) • Trying to improve on express with simpler file structure • Trying to improve on npm with dynamic packages • npm-like, not documented yet • Uses own node internally • Can create a normal node app for regular deployment • I hope this will change (no real hurdle)
  13. 13. Meteor: Hot Code Pushes • Changes to code on server is pushed realtime to all clients • <demo>
  14. 14. Meteor: Deployment • You use meteor to run • meteor • For play you can use their servers • meteor deploy <anything you want> • Or you can bundle a normal node app for deployment • meteor bundle (generates node tgz)
  15. 15. Last Thoughts (IMHO) • Both have great potential • Demonstrate what is possible with common language • Show Node can be more than Ruby in JavaScript • Personally digging Derby more right now • Normal packages, KO bindings, HTML in browser • Hopefully both will drive off each other • Will tweet deck - @studgeek

×