Introduction to MeteorJS

Weiming Chen
Weiming ChenSoftware Developer at Fairfax Media
Introduction to
MeteorJS
A Fully-Fledged JavaScript App Framework
Weiming Chen, June/2015
The “WOW” Moment
● When I encountered Ruby on Rails, while I
was an ASP.NET developer
● The new “WOW” moment:
Meteor and RoR, in Common
1. Open source
2. Fully-fledged, “opinionated” web frameworks
3. Great package/library systems
○ Atmosphere vs. Rubygems
4. Super easy deployment
○ meteor.com vs. Heroku
5. Hot code reload on change
6. “Simplicity = Productivity”
What’s the New “WOW” about?
● Data on the Wire
○ Built-in support for
websockets
● One language
○ No need to switch
between:
■ JavaScript
■ <insert name of your
favourite server-side
language>
■ SQL
New “WOW” (continued)
● Full Stack Reactivity
○ all layers, database to HTML templates, updates
themselves automatically
● Database Everywhere
○ same data model and query interface on client,
server and database
● Latency compensation
○ Prefetching data
○ Simulate actions to make it look like server methods
return instantly
● More to be shown...
Demo Time!
Install Meteor:
$ curl https://install.meteor.com/
| sh
Create a simple chatroom app:
$ meteor create chatroom-demo
$ cd chatroom-demo
$ meteor
Demo (continued)
Code at: https://github.com/MingStar/meteorjs-chatroom-demo
git tags:
v0.1 - initial commit
v0.2 - accounts and log in
$ meteor add accounts-ui accounts-password
v0.3 - display and send messages
Demo (continued)
v0.4 - system message
$ meteor mongo
meteor:PRIMARY> db.messages.insert({"username" : "system",
"text": "stop chatting, back to work!", "createdAt": new
Date()});
v0.5 - ios app!
$ meteor install-sdk ios
$ meteor add-platform ios
$ meteor run ios
Finally, deploy!
$ meteor deploy chatroom-demo.meteor.com
Introduction to MeteorJS
Meteor: Under the Hood
Spacebars
Meteor also Automagically:
● incorporates jQuery and underscoreJS
● compiles Coffeescript
● scopes your JS code by files
○ var foo = bar; //foo is file scoped
○ foo2 = bar; //foo2 is app scoped
● minifies and concatenates CSS and JS
● preserves the UI state (form inputs, scroll
position, selection) b/t hot reloads
Useful Packages (out of 43,000+)
$ meteor add accounts-facebook
● accounts-twitter
● accounts-google
● accounts-linkedin
$ meteor add
meteoric:ionic-
sass
http://ionicframework.com/
Caution: Meteor is NOT a silver bullet
● New technology:
○ became 1.0 in October/2014
○ yet to see wide adoption as RoR
● Excellent for building responsive Web App
● Excellent for rapid prototyping
● Does Meteor Scale?
○ Factors to consider: routing, sessions, job
processing, static file serving, and database
● How to Scale Meteor?
Thank You!
Questions?
Bonus: Does Websocket Scale?
● 620K idle concurrent websocket connections
on only 1 m3.xlarge (4 core, 15GB RAM)
EC2 instance.*
● Does your idea/business scale?
*http://www.jayway.com/2015/04/13/600k-concurrent-websocket-connections-on-aws-using-node-js/
Bonus: The MEAN stack vs. Meteor
http://wiki.dandascalescu.com/essays/meteor_js_vs_the_mean_stack
Bonus: Meteor Project Structure
● .meteor: meteor project
info, do not need modify it.
● client: all logics here are
visible on the browser
only.
● lib: all logic here will be
loaded before anything.
● private: visible on server
side only.
● public: for static content
● server: server side logic,
not available on the
browser.
1 of 17

Recommended

Javascript Myths and its Evolution by
Javascript Myths and its  EvolutionJavascript Myths and its  Evolution
Javascript Myths and its EvolutionDeepu S Nath
875 views30 slides
Evolution of java script libraries by
Evolution of java script librariesEvolution of java script libraries
Evolution of java script librariesColumbia Developers Guild
476 views20 slides
Introduction to MERN by
Introduction to MERNIntroduction to MERN
Introduction to MERNShyamMohanKunwar
852 views10 slides
Introduction to MERN Stack by
Introduction to MERN StackIntroduction to MERN Stack
Introduction to MERN StackSurya937648
9.9K views22 slides
Beginning MEAN Stack by
Beginning MEAN StackBeginning MEAN Stack
Beginning MEAN StackRob Davarnia
1.5K views141 slides
The State of Rust Web Frameworks by
The State of Rust Web FrameworksThe State of Rust Web Frameworks
The State of Rust Web FrameworksIanWagner10
90 views18 slides

More Related Content

What's hot

Part One: Building Web Apps with the MERN Stack by
Part One: Building Web Apps with the MERN StackPart One: Building Web Apps with the MERN Stack
Part One: Building Web Apps with the MERN StackMongoDB
5.5K views23 slides
FULL stack -> MEAN stack by
FULL stack -> MEAN stackFULL stack -> MEAN stack
FULL stack -> MEAN stackAshok Raj
562 views49 slides
Building your first MEAN application by
Building your first MEAN applicationBuilding your first MEAN application
Building your first MEAN applicationFITC
7.7K views39 slides
Get MEAN! Node.js and the MEAN stack by
Get MEAN!  Node.js and the MEAN stackGet MEAN!  Node.js and the MEAN stack
Get MEAN! Node.js and the MEAN stackNicholas McClay
18.5K views30 slides
Mean Stack - An Overview by
Mean Stack - An OverviewMean Stack - An Overview
Mean Stack - An OverviewNaveen Pete
1K views21 slides
MEAN Stack WeNode Barcelona Workshop by
MEAN Stack WeNode Barcelona WorkshopMEAN Stack WeNode Barcelona Workshop
MEAN Stack WeNode Barcelona WorkshopValeri Karpov
1K views124 slides

What's hot(20)

Part One: Building Web Apps with the MERN Stack by MongoDB
Part One: Building Web Apps with the MERN StackPart One: Building Web Apps with the MERN Stack
Part One: Building Web Apps with the MERN Stack
MongoDB5.5K views
FULL stack -> MEAN stack by Ashok Raj
FULL stack -> MEAN stackFULL stack -> MEAN stack
FULL stack -> MEAN stack
Ashok Raj562 views
Building your first MEAN application by FITC
Building your first MEAN applicationBuilding your first MEAN application
Building your first MEAN application
FITC7.7K views
Get MEAN! Node.js and the MEAN stack by Nicholas McClay
Get MEAN!  Node.js and the MEAN stackGet MEAN!  Node.js and the MEAN stack
Get MEAN! Node.js and the MEAN stack
Nicholas McClay18.5K views
Mean Stack - An Overview by Naveen Pete
Mean Stack - An OverviewMean Stack - An Overview
Mean Stack - An Overview
Naveen Pete1K views
MEAN Stack WeNode Barcelona Workshop by Valeri Karpov
MEAN Stack WeNode Barcelona WorkshopMEAN Stack WeNode Barcelona Workshop
MEAN Stack WeNode Barcelona Workshop
Valeri Karpov1K views
Introduction to the MEAN stack by Yoann Gotthilf
Introduction to the MEAN stackIntroduction to the MEAN stack
Introduction to the MEAN stack
Yoann Gotthilf4.2K views
LAMP is so yesterday, MEAN is so tomorrow! :) by Sascha Sambale
LAMP is so yesterday, MEAN is so tomorrow! :) LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :)
Sascha Sambale9.8K views
MongoDB and the MEAN Stack by MongoDB
MongoDB and the MEAN StackMongoDB and the MEAN Stack
MongoDB and the MEAN Stack
MongoDB11.1K views
Future development stack ~ MeteorJS by Victor Stan
Future development stack ~ MeteorJSFuture development stack ~ MeteorJS
Future development stack ~ MeteorJS
Victor Stan1.1K views
NodeSummit - MEAN Stack by Valeri Karpov
NodeSummit - MEAN StackNodeSummit - MEAN Stack
NodeSummit - MEAN Stack
Valeri Karpov4.1K views
Modern Static Site with GatsbyJS by Riza Fahmi
Modern Static Site with GatsbyJSModern Static Site with GatsbyJS
Modern Static Site with GatsbyJS
Riza Fahmi1K views
MEAN Stack Workshop at Node Philly, 4/9/14 by Valeri Karpov
MEAN Stack Workshop at Node Philly, 4/9/14MEAN Stack Workshop at Node Philly, 4/9/14
MEAN Stack Workshop at Node Philly, 4/9/14
Valeri Karpov2.2K views
MEAN Stack by Dotitude
MEAN StackMEAN Stack
MEAN Stack
Dotitude648 views

Viewers also liked

Lean UX Mobile Development - built alongside real users by
Lean UX Mobile Development - built alongside real usersLean UX Mobile Development - built alongside real users
Lean UX Mobile Development - built alongside real usersMichelle Zassenhaus
4.6K views21 slides
Improving the Quality of Existing Software by
Improving the Quality of Existing SoftwareImproving the Quality of Existing Software
Improving the Quality of Existing SoftwareSteven Smith
1.3K views76 slides
Folien sfps 4 by
Folien sfps 4Folien sfps 4
Folien sfps 4Nazar Abdul Kareem Hussein
910 views34 slides
Common asp.net design patterns aspconf2012 by
Common asp.net design patterns aspconf2012Common asp.net design patterns aspconf2012
Common asp.net design patterns aspconf2012Steven Smith
8K views45 slides
Onion Architecture with S#arp by
Onion Architecture with S#arpOnion Architecture with S#arp
Onion Architecture with S#arpGary Pedretti
4K views49 slides
Query Handling System by
Query Handling SystemQuery Handling System
Query Handling Systemhimabindu54
8.2K views55 slides

Viewers also liked(13)

Lean UX Mobile Development - built alongside real users by Michelle Zassenhaus
Lean UX Mobile Development - built alongside real usersLean UX Mobile Development - built alongside real users
Lean UX Mobile Development - built alongside real users
Michelle Zassenhaus4.6K views
Improving the Quality of Existing Software by Steven Smith
Improving the Quality of Existing SoftwareImproving the Quality of Existing Software
Improving the Quality of Existing Software
Steven Smith1.3K views
Common asp.net design patterns aspconf2012 by Steven Smith
Common asp.net design patterns aspconf2012Common asp.net design patterns aspconf2012
Common asp.net design patterns aspconf2012
Steven Smith8K views
Onion Architecture with S#arp by Gary Pedretti
Onion Architecture with S#arpOnion Architecture with S#arp
Onion Architecture with S#arp
Gary Pedretti4K views
Query Handling System by himabindu54
Query Handling SystemQuery Handling System
Query Handling System
himabindu548.2K views
ASP.NET Session 1 by Sisir Ghosh
ASP.NET Session 1ASP.NET Session 1
ASP.NET Session 1
Sisir Ghosh1.3K views
50 ideas for using beacons by Sinergia Labs
50 ideas for using beacons50 ideas for using beacons
50 ideas for using beacons
Sinergia Labs17.6K views
Beacons: The Retail Revolution by kontakt.io
Beacons: The Retail RevolutionBeacons: The Retail Revolution
Beacons: The Retail Revolution
kontakt.io6.2K views
In-Store Marketing via Micro-Location: Beacon by DigitasLBi Paris
In-Store Marketing via Micro-Location: BeaconIn-Store Marketing via Micro-Location: Beacon
In-Store Marketing via Micro-Location: Beacon
DigitasLBi Paris83K views
Research assumption by Nursing Path
Research assumptionResearch assumption
Research assumption
Nursing Path360.6K views

Similar to Introduction to MeteorJS

Meteor Day Athens (2014-11-07) by
Meteor Day Athens (2014-11-07)Meteor Day Athens (2014-11-07)
Meteor Day Athens (2014-11-07)svub
336 views16 slides
Plone FSR by
Plone FSRPlone FSR
Plone FSRfulv
476 views51 slides
Jayway Web Tech Radar 2015 by
Jayway Web Tech Radar 2015Jayway Web Tech Radar 2015
Jayway Web Tech Radar 2015Gustaf Nilsson Kotte
965 views36 slides
An introduction to Node.js by
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.jsKasey McCurdy
788 views36 slides
Meteor Introduction by
Meteor IntroductionMeteor Introduction
Meteor IntroductionRandell Hynes
675 views18 slides
Meteor by
MeteorMeteor
MeteorMichael Elfassy
187 views20 slides

Similar to Introduction to MeteorJS(20)

Meteor Day Athens (2014-11-07) by svub
Meteor Day Athens (2014-11-07)Meteor Day Athens (2014-11-07)
Meteor Day Athens (2014-11-07)
svub336 views
Plone FSR by fulv
Plone FSRPlone FSR
Plone FSR
fulv476 views
An introduction to Node.js by Kasey McCurdy
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.js
Kasey McCurdy788 views
Isomorphic JavaScript – future of the web by Sigma Software
Isomorphic JavaScript – future of the webIsomorphic JavaScript – future of the web
Isomorphic JavaScript – future of the web
Sigma Software732 views
Meteor Day - Nov 6 at La Commune by Michael Elfassy
Meteor Day - Nov 6 at La CommuneMeteor Day - Nov 6 at La Commune
Meteor Day - Nov 6 at La Commune
Michael Elfassy795 views
Building RESTtful services in MEAN by Madhukara Phatak
Building RESTtful services in MEANBuilding RESTtful services in MEAN
Building RESTtful services in MEAN
Madhukara Phatak2.1K views
Mobile and IBM Worklight Best Practices by Andrew Ferrier
Mobile and IBM Worklight Best PracticesMobile and IBM Worklight Best Practices
Mobile and IBM Worklight Best Practices
Andrew Ferrier8.7K views
Introduction to meteor by NodeXperts
Introduction to meteorIntroduction to meteor
Introduction to meteor
NodeXperts117 views
Angular (v2 and up) - Morning to understand - Linagora by LINAGORA
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
LINAGORA480 views
Meteor Revolution: From DDP to Blaze Reactive Rendering by Massimo Sgrelli
Meteor Revolution: From DDP to Blaze Reactive Rendering Meteor Revolution: From DDP to Blaze Reactive Rendering
Meteor Revolution: From DDP to Blaze Reactive Rendering
Massimo Sgrelli678 views
Get started with meteor | designveloper software agency meteor prime partner by Designveloper
Get started with meteor | designveloper software agency   meteor prime partnerGet started with meteor | designveloper software agency   meteor prime partner
Get started with meteor | designveloper software agency meteor prime partner
Designveloper306 views
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba... by Dipali Vyas
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
Magnificent Meteor -By Dipali Vyas (PM Zestard Technologies) for GDG Ahmedaba...
Dipali Vyas1K views
Simple Cloud with Amazon Lightsail - Mike Coleman by Amazon Web Services
Simple Cloud with Amazon Lightsail - Mike ColemanSimple Cloud with Amazon Lightsail - Mike Coleman
Simple Cloud with Amazon Lightsail - Mike Coleman
Net training in bhubaneswar by litbbsr
Net training in bhubaneswar Net training in bhubaneswar
Net training in bhubaneswar
litbbsr137 views
Single page apps a bleeding edge new concept or a revived old one? by Omer Dawelbeit
Single page apps   a bleeding edge new concept or a revived old one?Single page apps   a bleeding edge new concept or a revived old one?
Single page apps a bleeding edge new concept or a revived old one?
Omer Dawelbeit507 views

Recently uploaded

The Power of Generative AI in Accelerating No Code Adoption.pdf by
The Power of Generative AI in Accelerating No Code Adoption.pdfThe Power of Generative AI in Accelerating No Code Adoption.pdf
The Power of Generative AI in Accelerating No Code Adoption.pdfSaeed Al Dhaheri
44 views18 slides
KubeConNA23 Recap.pdf by
KubeConNA23 Recap.pdfKubeConNA23 Recap.pdf
KubeConNA23 Recap.pdfMichaelOLeary82
28 views27 slides
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf by
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfAdopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfMichaelOLeary82
13 views74 slides
Future of AR - Facebook Presentation by
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook PresentationRob McCarty
66 views27 slides
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023BookNet Canada
46 views19 slides
Choosing the Right Flutter App Development Company by
Choosing the Right Flutter App Development CompanyChoosing the Right Flutter App Development Company
Choosing the Right Flutter App Development CompanyFicode Technologies
13 views9 slides

Recently uploaded(20)

The Power of Generative AI in Accelerating No Code Adoption.pdf by Saeed Al Dhaheri
The Power of Generative AI in Accelerating No Code Adoption.pdfThe Power of Generative AI in Accelerating No Code Adoption.pdf
The Power of Generative AI in Accelerating No Code Adoption.pdf
Saeed Al Dhaheri44 views
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf by MichaelOLeary82
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfAdopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
MichaelOLeary8213 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty66 views
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by BookNet Canada
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
BookNet Canada46 views
Optimizing Communication to Optimize Human Behavior - LCBM by Yaman Kumar
Optimizing Communication to Optimize Human Behavior - LCBMOptimizing Communication to Optimize Human Behavior - LCBM
Optimizing Communication to Optimize Human Behavior - LCBM
Yaman Kumar39 views
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell by Fwdays
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
"Node.js vs workers — A comparison of two JavaScript runtimes", James M Snell
Fwdays14 views
AIM102-S_Cognizant_CognizantCognitive by PhilipBasford
AIM102-S_Cognizant_CognizantCognitiveAIM102-S_Cognizant_CognizantCognitive
AIM102-S_Cognizant_CognizantCognitive
PhilipBasford23 views
"Package management in monorepos", Zoltan Kochan by Fwdays
"Package management in monorepos", Zoltan Kochan"Package management in monorepos", Zoltan Kochan
"Package management in monorepos", Zoltan Kochan
Fwdays37 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE85 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue209 views
Deep Tech and the Amplified Organisation: Core Concepts by Holonomics
Deep Tech and the Amplified Organisation: Core ConceptsDeep Tech and the Amplified Organisation: Core Concepts
Deep Tech and the Amplified Organisation: Core Concepts
Holonomics17 views
GDSC GLAU Info Session.pptx by gauriverrma4
GDSC GLAU Info Session.pptxGDSC GLAU Info Session.pptx
GDSC GLAU Info Session.pptx
gauriverrma415 views
"Surviving highload with Node.js", Andrii Shumada by Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays59 views
Cocktail of Environments. How to Mix Test and Development Environments and St... by Aleksandr Tarasov
Cocktail of Environments. How to Mix Test and Development Environments and St...Cocktail of Environments. How to Mix Test and Development Environments and St...
Cocktail of Environments. How to Mix Test and Development Environments and St...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... by Moses Kemibaro
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Moses Kemibaro38 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays37 views

Introduction to MeteorJS

  • 1. Introduction to MeteorJS A Fully-Fledged JavaScript App Framework Weiming Chen, June/2015
  • 2. The “WOW” Moment ● When I encountered Ruby on Rails, while I was an ASP.NET developer ● The new “WOW” moment:
  • 3. Meteor and RoR, in Common 1. Open source 2. Fully-fledged, “opinionated” web frameworks 3. Great package/library systems ○ Atmosphere vs. Rubygems 4. Super easy deployment ○ meteor.com vs. Heroku 5. Hot code reload on change 6. “Simplicity = Productivity”
  • 4. What’s the New “WOW” about? ● Data on the Wire ○ Built-in support for websockets ● One language ○ No need to switch between: ■ JavaScript ■ <insert name of your favourite server-side language> ■ SQL
  • 5. New “WOW” (continued) ● Full Stack Reactivity ○ all layers, database to HTML templates, updates themselves automatically ● Database Everywhere ○ same data model and query interface on client, server and database ● Latency compensation ○ Prefetching data ○ Simulate actions to make it look like server methods return instantly ● More to be shown...
  • 6. Demo Time! Install Meteor: $ curl https://install.meteor.com/ | sh Create a simple chatroom app: $ meteor create chatroom-demo $ cd chatroom-demo $ meteor
  • 7. Demo (continued) Code at: https://github.com/MingStar/meteorjs-chatroom-demo git tags: v0.1 - initial commit v0.2 - accounts and log in $ meteor add accounts-ui accounts-password v0.3 - display and send messages
  • 8. Demo (continued) v0.4 - system message $ meteor mongo meteor:PRIMARY> db.messages.insert({"username" : "system", "text": "stop chatting, back to work!", "createdAt": new Date()}); v0.5 - ios app! $ meteor install-sdk ios $ meteor add-platform ios $ meteor run ios Finally, deploy! $ meteor deploy chatroom-demo.meteor.com
  • 10. Meteor: Under the Hood Spacebars
  • 11. Meteor also Automagically: ● incorporates jQuery and underscoreJS ● compiles Coffeescript ● scopes your JS code by files ○ var foo = bar; //foo is file scoped ○ foo2 = bar; //foo2 is app scoped ● minifies and concatenates CSS and JS ● preserves the UI state (form inputs, scroll position, selection) b/t hot reloads
  • 12. Useful Packages (out of 43,000+) $ meteor add accounts-facebook ● accounts-twitter ● accounts-google ● accounts-linkedin $ meteor add meteoric:ionic- sass http://ionicframework.com/
  • 13. Caution: Meteor is NOT a silver bullet ● New technology: ○ became 1.0 in October/2014 ○ yet to see wide adoption as RoR ● Excellent for building responsive Web App ● Excellent for rapid prototyping ● Does Meteor Scale? ○ Factors to consider: routing, sessions, job processing, static file serving, and database ● How to Scale Meteor?
  • 15. Bonus: Does Websocket Scale? ● 620K idle concurrent websocket connections on only 1 m3.xlarge (4 core, 15GB RAM) EC2 instance.* ● Does your idea/business scale? *http://www.jayway.com/2015/04/13/600k-concurrent-websocket-connections-on-aws-using-node-js/
  • 16. Bonus: The MEAN stack vs. Meteor http://wiki.dandascalescu.com/essays/meteor_js_vs_the_mean_stack
  • 17. Bonus: Meteor Project Structure ● .meteor: meteor project info, do not need modify it. ● client: all logics here are visible on the browser only. ● lib: all logic here will be loaded before anything. ● private: visible on server side only. ● public: for static content ● server: server side logic, not available on the browser.