Authors: Scott Allen, Tom Bell, Samer Buna, Rob Conery, Joe Eames, Cory House, Jonathan Mills, Paul O'Fallon, Gregg Pollack, Carlos Souza

Node.js is a JavaScript runtime that uses a non-blocking I/O model that makes it lightweight, efficient and very popular among JavaScript developers who also need to write... Read more


The courses in this section will introduce you to fundamental topics including basic Node.js syntax, NPM package management, and creating your own development environment.

Node.js: Getting Started

by Samer Buna

Sep 11, 2018 / 3h 29m

3h 29m

Start Course

Web and Mobile applications depend on back-end services to host their various resources and do most of the heavy lifting. Creating these back-end services is often very difficult, but the Node.js runtime makes it easier and more fun. In this course, Node.js: Getting Started, you'll learn the basic skills you need to create scalable back-end services with Node.js. First, you'll learn about the tools that come built-in with Node as well as some of the tools that are offered by the community. Next, you'll learn about package management, module dependencies, event-driven concurrency strategies, and how to write code to interface with the operating systems on servers. Finally, you'll discover the modern JavaScript features that you can use with Node.js today. When you're finished with this course, you'll be comfortable creating and executing code for Node.

Table of contents
  1. Course Overview1m
  2. Introduction25m
  3. Getting Started with Node32m
  4. Modern JavaScript25m
  5. NPM: Node Package Manager49m
  6. Modules and Concurrency40m
  7. Working with Web Servers22m
  8. Working with the Operating System11m

Learning To Program - Part 1: Getting Started

by Scott Allen

Jun 10, 2013 / 3h 12m

3h 12m

Start Course

Learning to Program gives you an introduction to computer programming using the worlds most popular programming language - JavaScript. In the course we'll work with different JavaScript programs and learn how to control the flow of a program, manage multiple source code files, understand boolean logic, and by the end even build a simple web server.

Table of contents
  1. Learning To Program - An Introduction20m
  2. Learning To Program - Editors and Code Files24m
  3. Learning To Program - Variables and Types21m
  4. Learning To Program - Functions22m
  5. Learning To Program - Branch And Loop29m
  6. Learning To Program - Objects26m
  7. Learning To Program - Tests28m
  8. Learning To Program - Final18m

NPM Playbook

by Joe Eames

Dec 11, 2015 / 58m


Start Course

NPM is not just for Node developers - it has become the default package manager for front end JavaScript developers as well. This course will take you from knowing nothing about NPM to being an expert in using NPM to manage the dependencies for your project. Additionally, you will learn how to publish packages for other developers to use in their own projects, how to keep those packages updated, and how to coordinate them with your github repository.

Table of contents
  1. Course Overview1m
  2. NPM Basics29m
  3. Advanced NPM13m
  4. Publishing Your Own Package13m

Building a JavaScript Development Environment

by Cory House

Nov 10, 2016 / 5h 19m

5h 19m

Start Course

Hello! My name is Cory, and welcome to Building a JavaScript Development Environment. In this course, you will explore the long list of decisions and patterns for building your own JavaScript development from scratch using modern tooling. You will get there by learning about major topics like transpiling, bundling, testing, and npm scripts for automation. By the end of this course, you will be able to create a rapid feedback JavaScript development experience that suits your team's unique preferences. Before you begin, make sure you are already familiar with JavaScript and HTML. After this course, you'll be ready to move on to building applications in a wide array of technologies including Angular, React, Node.js, and Electron. I hope you'll join me, and I look forward to helping you on your learning journey here at Pluralsight.

Table of contents
  1. Course Overview 1m
  2. You Need a Starter Kit19m
  3. Editors and Configuration8m
  4. Package Management10m
  5. Development Web Server19m
  6. Automation15m
  7. Transpiling18m
  8. Bundling30m
  9. Linting26m
  10. Testing and Continuous Integration42m
  11. HTTP Calls44m
  12. Project Structure9m
  13. Production Build46m
  14. Production Deploy26m


The courses in this section cover some of the more nuanced topics in including integrating Node.js with Express, asynchronous code, and working with RESTful web services.

Introduction to Node.js

by Paul O'Fallon

Dec 20, 2012 / 2h 48m

2h 48m

Start Course

In this course we begin with Node's background, concepts and strategies for writing asynchronous code. We then examine Node's module system, including built-in modules, application modularization as well as the NPM third party module registry. From there we tackle EventEmitters and Streams, as well as utilities for interacting with the local file system. Next we look at using Node to write both client and server web applications, as well as real time integration with Socket.IO. We cover writing unit tests using both the built-in assert module and third party frameworks. We wrap up with a look at launching child processes in Node and writing scalable applications with the "cluster" module.

Table of contents
  1. Getting Started with Node.js36m
  2. Modules, require() and NPM17m
  3. Events and Streams26m
  4. Accessing the Local System17m
  5. Interacting with the Web21m
  6. Testing and Debugging27m
  7. Scaling Your Node Application20m

Node.js: Introduction to Node.js, Events, and Streams

by Gregg Pollack

Aug 29, 2018 / 1h 5m

1h 5m

Start Course

Discover how the Node framework can help you write server-side code and build lightweight, scalable network applications. This interactive course was formerly part of Real-time Web With Node.js on Code School.

Table of contents
  1. Intro to Node.js1 Video - 5 Challenges
  2. Events1 Video - 5 Challenges
  3. Streams1 Video - 3 Challenges

Node.js: Using Modules and npm

by Gregg Pollack

Aug 9, 2018 / 27m


Start Course

Discover how to use modules in your node.js code, and the npm package manager. This interactive course was formerly part of Real-time Web With Node.js on Code School.

Table of contents
  1. Modules1 Video - 5 Challenges

Building Web Applications with Node.js and Express 4.0 (UPDATE)

by Jonathan Mills

Mar 23, 2018 / 5h 12m

5h 12m

Start Course

Node.js is a simple and powerful tool for backend JavaScript development. In this course, Building Web Applications with Node.js and Express 4.0 (UPDATE), you will learn everything you need to know to get started in web development with Node.js. First, you will cover the basics of Node.js and how to select an IDE. Second, you will explore template engines and how to render in HTML out of Express. Next, you will learn all aspects of routing, including express middleware. Finally, you will work with multiple databases and backend APIs and will cover local security with Passport.js. By the end of this course, you will have all of the tools you need to build a full-stack web application with Node.js and Express.

Table of contents
  1. Course Overview1m
  2. Getting Started34m
  3. First Page37m
  4. Setting up Tooling35m
  5. Templating Engines25m
  6. Routing31m
  7. Databases1h 5m
  8. Authentication52m
  9. Structure and Third-party APIs26m

Node.js: Introduction to Using Express.js

by Gregg Pollack

Sep 18, 2018 / 33m


Start Course

Learn the basics of Express.js, a web framework for Node.js. This interactive course was formerly part of Real-time Web With Node.js on Code School.

Table of contents
  1. Express1 Video - 6 Challenges

RESTful Web Services with Node.js and Express

by Jonathan Mills

Apr 14, 2015 / 2h 4m

2h 4m

Start Course

Node.js is a simple and powerful tool for backend development. When combined with express, you can create lightweight, fast, scalable APIs quickly and simply. In this course, we will walk through how to stand up a lightweight Express server serving truly RESTful services using Node.js, Mongoose, and MongoDB. We will implement all of the RESTful verbs to get, add, and update data from our service. We will also spend some time working through unit and end to end integration tests for our services.

Table of contents
  1. What Is REST?18m
  2. Getting Data20m
  3. Posting Data17m
  4. Updating Data20m
  5. Testing33m
  6. HATEOAS13m

Build a Banking Portal with Node & Express

by Tom Bell

Jul 31, 2018 / 2h 30m

2h 30m

Start Project

In this project, you’ll follow along with our instructions and build a simple Banking Portal with Node & Express. You’ll create several routes that will display data read from files. You will then create several routes that will handle form data and then write that data to a file.

Project overview
  1. Setup15m
  2. Use Express to Create a Server20m
  3. File Handling and Routing30m
  4. Handling Form Data30m
  5. Creating a Data Access Library20m
  6. Using the Express Router35m


In these advanced courses you will learn advanced topics such as testing, application patterns, and Node.js module structure.

Node.js Testing Strategies

by Rob Conery

Apr 14, 2015 / 2h 39m

2h 39m

Start Course

Testing with Node.js and JavaScript can be intimidating. In this course, Rob Conery will offer tips and techniques he's used over the years for testing and maintaining large Node applications.

Table of contents
  1. Introduction31m
  2. Simple Tests with Node.js and Mocha49m
  3. Data Access Considerations32m
  4. External APIs46m

Node Application Patterns

by Rob Conery

Jul 11, 2014 / 2h 30m

2h 30m

Start Course

In this course, Rob Conery takes you beyond the simple demo with Node.js and talks about ways you can structure your application, your code, and your tests. Along the way he'll discuss various JavaScript patterns and Node toolsets.

Table of contents
  1. Introduction40m
  2. Setting Up Your Project22m
  3. Building a Registration Module49m
  4. Building an Authentication Module at Full Speed24m
  5. Integrating Our Module into a Web App13m

Advanced Node.js

by Samer Buna

Feb 17, 2017 / 3h 45m

3h 45m

Start Course

Hello, and welcome to Advanced Node.js, part of the Node.js Learning Path here at Pluralsight. My name is Samer Buna, and I’m looking forward to helping you understand how the Node runtime work and learn about all the powerful built-in features that you can use in every Node process. Along the way, you’re going to be learning about things like modules management, V8, concurrency and event loop, streams, child processes, and clusters. You’ll also be using npm and Node's event-driven modules for networking and HTTP web servers. You’ll want to make sure you’re already up to speed on modern JavaScript and the basics of Node.js. So if you’re ready to get started, Advanced Node.js is waiting for you. Thanks again for visiting me here at Pluralsight!

Table of contents
  1. Course Overview1m
  2. Node != JavaScript1h 2m
  3. Concurrency Model and Event Loop20m
  4. Node's Event-driven Architecture21m
  5. Node for Networking19m
  6. Node for Web19m
  7. Node's Common Built-in Libraries19m
  8. Working with Streams19m
  9. Clusters and Child Processes38m
  10. Course Wrap Up2m

Node.js: Creating a Basic Node.js App with and Redis

by Gregg Pollack

Oct 2, 2018 / 1h 6m

1h 6m

Start Course

Learn how to create a simple chat client using Node.js,, and Redis. This interactive course was formerly part of Real-time Web With Node.js on Code School.

Table of contents
  1. Socket.io1 Video - 7 Challenges
  2. Persisting Data1 Video - 7 Challenges

What you will learn

  • Strategies for writing asynchronous code
  • EventEmitters and Streams
  • Real time integration with Socket.IO
  • Using Express.js
  • Data access in Node.js
  • Building APIs with Node.js
  • Modular JavaScript
  • Performance tips
  • Testing
  • Common tools, patterns, and best practices


No prior programming knowledge required, but a background in JavaScript will help speed your progress.