(6 customer reviews)

NodeJS: Zero to HERO

This is a bespoke course, please contact us for dates


This product is currently out of stock and unavailable.



THIS IS DELIVERED IN A VIRTUAL CLASSROOM – WHAT IS A VIRTUAL CLASSROOM ? Find out more here                 http://bit.ly/2jvKJYq

NodeJS is the powerful application and server technology that is radically changing the workflows of modern developers.  As a totally free technology, NodeJS allows developers to create native software and servers entirely through programming in JavaScript. This makes developing products using the latest technologies like Web Sockets, HTTPs and creating dynamic content with the express framework a very simple process.

NodeJS is a modular tool which means you are entitled to use freely available units that already offer highly advanced solutions to many common problems and can be used with the minimal amount of code. To date, there are over 200,000 free modules that produce almost any part of the workflow as an existing off-the-shelf solution. This can radically reduce development time and costs and is why NodeJS has become one of the largest free server platforms to date used in the development of modern web applications.



Anyone looking to build powerful website applications or server technologies.



The courses assume a basic knowledge of JavaScript or a good grasp of programming fundamentals in other languages.


  • JavaScript basics
  • Developing NodeJS modules
  • File handling and REPL
  • Managing processes
  • Building a RESTful API with Express and a template engine
  • Web Sockets, TCP, HTTP, HTTPs
  • Debugging Node applications and Unit Testing



    • Overview of the JavaScript language
    • Data types, asserting and checking
    • Collections, arrays and objects
    • Functions, Control Flow and Loops
    • Object Orientated Programming
    • Revealing module and other common design patterns

    NodeJS Basics

    • Downloading and installing NodeJS
    • Create a simple node application
    • The NodeJS Terminal
    • NodeJS package manager NPM
    • Creating a package for managing your application

    Node Modules

    • What is a module
    • Require and module exports
    • Using core modules
    • Creating modules
    • Design patterns for organising modules
    • Look at useful core modules

    File System

    • Node apps and managing a file system
    • Creating and deleting files and directories
    • Copying and managing files
    • Scanning directories


    • What is a process
    • Managing processes
    • Creating background process
    • Task runners and recovering from failure

    HTTP and HTTPs

    • Making a simple server
    • When to use HTTP and HTTPs
    • Server ports and listening
    • HTTP requests and responses
    • Request and response headers and body
    • Creating a response to incoming requests
    • Building a simple HTTP server with static files

    NET (TCP) and WebSockets

    • How do socket servers differ with HTTP
    • Using TCP and WebSockets
    • Server and clients
    • Native applications vs web applications
    • Making a simple chatroom app with HTML5 and WebSockets


    • Why socket.IO over other WebSocket modules
    • Client side and server side
    • Data persistence options


    • What is the express framework
    • How it differs to using HTTP and other core modules
    • Creating an express application

    Express Server

    • Making an HTTP internal server
    • Attaching express to an external server
    • The role of semantic requests
    • USE, GET, POST, PUT, DELETE, etc.

    Routing, Static Routes and Data Routes

    • Routes explained
    • Defining routes with paths and URL
    • Defining route parameters for data input
    • URL Encoded variables
    • The use of Route Parameters and URL variables
    • Regular expressions
    • External routing
    • Static routing

    RESTful APIs

    • What does RESTful mean?
    • Manipulating data via a route
    • Typical semantic requests for routing an API
    • Persisting data through JSON
    • The role of database technology
    • MongoDB and comparison to MySQL


    • Using MongoDB locally or via online service
    • Downloading and installing MongoDB
    • Running a MongoDB server locally
    • Data location and paths
    • Running the MongoDB terminal
    • Principles of NoSQL database

    MongoDB CRUD

    • Creating databases and collections
    • Documents
    • Difference between traditional databases
    • Collections verses tables
    • Documents verses rows
    • Using models with DB
    • Simple queries to read and sort data
    • Updating data
    • Deleting data
    • Further learning of MongoDB

    MongoDB Modules

    • How to use MongoDB with Express
    • Native MongoDB module
    • MongoJS and Mongoose
    • Using Schemas to control RESTful APIs

    Online DB Services

    • Why use application data solutions?
    • MongoLAB
    • Firebase, DerbyJS, Meteor, FeatherJS, Parse.com

    Express and Rendering Data

    • What is a renderer?
    • Jade, EJS, Mustache and Handlebars
    • Rendering your pages with data bindings
    • Using partials
    • Creating a fully dynamic website

    Unit Testing

    • What is unit testing
    • How to plan for unit testing
    • Working with popular solutions like Jasmine and Mocha
    • Testing your app with Mocha

    NodeJS for Native Apps

    • Using Node for working with desktop and mobile applications
    • Making fast servers for games
    • Socket servers for real-time communication

    MEAN Stack Web Apps

    • What is a MEAN Stack app?
    • Rendering dynamic user interfaces
    • Front end frameworks: AngularJS and ReactJS

    Building a Real-World App

    • Creating a full real-world application using Node and Express
    • Planning and designing
    • Using object graphs
    • Creating Restful APIs and testing with PostMan
    • Building a simple app with partials using Bootstrap3
    • Differentiating static routes from data routes

    Publishing your Apps and Modules

    • Running your own Node Server
    • Using a hosting company
    • Publishing modules on NPM and Github

    The future of NodeJS

    • Changes to the JavaScript language
    • ES6 Harmony and ES7

    6 reviews for NodeJS: Zero to HERO

    1. Dewang Sharma

      It was a good learning experience.

    2. Marcus Lindberg

      The course was good, had good coverage of the product studied and the staff at Academy Class was friendly and helpful making it a good and valuable experience.

    3. Hannah O.

      The course was brilliant, just two of us being taught which i was really impressed with as it felt really one-on-one and more personal. I could ask questions easily and our tutor was great, very inspiring and a great teacher. I learned a lot and would definitely do many more courses with them. I’ve done a lot of short courses and this was the best. We also got tea, coffee and biscuits whenever we wanted and vouchers to buy our lunch with which I just thought was a really sweet nice touch.

    4. Peter

      Robert gave very clear explanations and focused on the core fundamentals. He was happy to go over and explain anything when I was not 100% certain. Robert was very friendly and always clarified if I understood what he taught.

    5. tristin

      The course was enjoyable. There were a few subjects i would have like to delved into deeper and some i would have been happy to only lightly touch on.

    6. Josh

      The instructor was great, but the course moved too slowly. 4 days of pure Node should dive a lot deeper in to Node I feel. Every day I thought we might get into something more complex we remained relatively high level. I would also say to decrease the number of topics broadly covered and dive deeper into the main Node topics. Potentially building something a little ‘bigger’ as opposed to just small examples of broad topics.

    Add a review