Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MEAN Stack

MEAN Stack

Intro to Mongo, Express, Angular, Node stack


Oursky Limited

October 29, 2013


  1. MEAN Stack

  2. What is MEAN M - MongoDB E - Express.js A

    - AngularJS N - Node.js
  3. Node.js http://nodejs.org/ Node.js is a platform built on Chrome's JavaScript

    runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
  4. Node.js • Chrome JS runtime (V8) • Event-driven • Non-blocking

    • Fast
  5. Node.js • Single Thread ◦ Use child process (http://nodejs. org/api/child_process.html)

    • Not easy to scale ◦ Use cluster (http://nodejs.org/api/cluster.html) ◦ Use node-http-proxy (https://github. com/nodejitsu/node-http-proxy)
  6. Express.js http://expressjs.com/ Express is a minimal and flexible node.js web

    application framework, providing a robust set of features for building single and multi-page, and hybrid web applications. With a myriad of HTTP utility methods and Connect middleware at your disposal, creating a robust user-friendly API is quick and easy.
  7. Express.js HTTP Server for Node.js • Connect (http://www.senchalabs.org/connect/) • View

    rendering ◦ EJS (http://embeddedjs.com/) ◦ Jade (http://jade-lang.com/)
  8. mongoDB http://www.mongodb.org/ Agile and Scalable MongoDB (from "humongous") is an

    open- source document database, and the leading NoSQL database. Written in C++.
  9. mongoDB NoSQL • Distributed • Key-value pairs • Schema-less (JSON)

    • Keep some RDBMSes’ features
  10. AngularJS http://angularjs.org/ HTML is great for declaring static documents, but

    it falters when we try to use it for declaring dynamic views in web-applications. AngularJS lets you extend HTML vocabulary for your application. The resulting environment is extraordinarily expressive, readable, and quick to develop.
  11. AngularJS • Model-View-Whatever • Client-side routing • Two-way data binding

    • Dependency Injection • Testing
  12. Summary • Node.js + Express.js => Quick response server •

    MongoDB => Fast read/write with JS • AngularJS => Modern web app