Node JS Workshop

Understand NodeJS platform along with its core modules. Creating web applications using Express JS over NodeJS as web server.

#Objectives
Understand NodeJS platform along with its core modules. Creating web applications using Express JS over NodeJS as web server.
#Audience
This course is for Web developers who are experienced in javascript.
#Pre-requisite
Prior experience developing web applications using HTML, CSS and Javascript
#Outline
####Day 1 – Session 1
#####Getting Started with Node.js

  • Installing Node js
    ####Developing a simple application on Node
  • Node’s event loop
  • Writing asynchronous code
    #####Modules and NPM
  • Accessing built-in modules
  • Using require() to modularize
  • Understanding callback execution in the event loop
  • Using NPM to find 3rd party modules
  • Maintaining projects using NPM command
  • Creating Modules with getters and setters
  • Understanding module caching and scopes
    #####Events and Streams
  • Events and EventEmitter class
  • Returning an EventEmitter from a function
  • Inheriting from EventEmitter
  • Readable and Writable Streams, the Pipe function
  • Piping Between Streams
    ####Day 1 – Session 2
    #####Accessing the Local System
  • Process Object
  • Interacting with the file system
  • Buffers
  • OS Module
    #####Interacting with the Web
  • Making web requests in Node
  • Web server in Node
  • Real time interaction with Socket.IO

#####Scaling node application

  • The Child Process module
  • Exec function
  • Spawn function
  • Fork function

####Day 2 – Session 1
#####Using Express Framework

  • Starting Express applications
  • Handling GET requests returning JSON
  • Navigating large datasets
  • Modifying data through PUT requests
    #####Testing and Debugging
  • The Assert module
  • Testing with Mocha and Should.js
  • Simulating HTTP requests with SuperTest
    #####Sessions and Databases
  • Connecting to MongoDB via Mongoose
  • Designing schemas for collections in Mongoose
  • Querying MongoDB collections
  • Persisting Express sessions through MongoDB and mongo-connect

####Day 2 – Session 2

#####Command-Line interfaces

  • Controlling the built-in REPL
  • Constructing a custom REPL
  • Building command line tools
    #####Overview of Grunt JS
  • Installing Grunt
  • Configuring Tasks
  • Creating Grunt tasks
  • Writing custom Grunt task
    #####Overview of MEAN stack
  • Install MEAN stack
  • Hands-on case study building web application on MEAN stack
    #Hardware & Network Requirements
  • All participants to have individual desktops with at least dual core or higher CPU with 2GB RAM
  • All participants’ system to be connected to internet
    #Software Requirements
  • Windows 7 /8 Linux Operating System
  • IDE – SublimeText / Bracket
  • Web browser – Mozilla Firefox with firebug, Google Chrome
  • Web server either Apache HTTP server or Apache Tomcat server

Hosted by

We at Ram Labs are involved in a healthy mix of consulting, training and product development. more