Programming Languages


The Complete Node.js Developer Course (3rd Edition)

Learn Node.js by building real-world applications with Node, Express, MongoDB, Jest, and more!

4.67 (54219 reviews)



35 hours


Oct 2020

Last Update
Regular Price

What you will learn

Completely refilmed for 3rd edition

Build, test, and launch Node apps

Create Express web servers and APIs

Store data with Mongoose and MongoDB

Use cutting-edge ES6/ES7 JavaScript

Deploy your Node apps to production

Create real-time web apps with SocketIO


This course was just completely refilmed to give you everything you need to master Node.js in 2019!

This includes new content, updated versions, new features, and more.


Have you tried to learn Node before? You start a new course, and the instructor has you installing a bunch of libraries before you even know what Node is or how it works. You eventually get stuck and reach out to the instructor, but you get no reply. You then close the course and never open it again.

Sound familiar?

I created this course to be what I wanted when I was learning Node.

The Complete Node.js Developer Course covers the fundamentals of Node before diving deep into great tools like Express, Mongoose, and MongoDB.

The entire course is based around a single goal: Turning you into a professional Node developer capable of developing, testing, and deploying real-world production applications.

The best way to learn Node is by building Node apps.

From the very start you’ll be programming every project and working through challenges that I’ve designed to reinforce what you’ve learned. This will give you the hands-on experience necessary to be able to create and launch your own project once you’re done.

You’ll be building four projects:

1. A note-taking app to get your feet wet

2. A weather application that interacts with the MapBox and Dark Sky APIs

3. A task manager REST API complete with user accounts and authentication

4. A real-time chat app with a client-side companion

By the end, you’ll be able to take what you’ve learned and launch your own Node application.

When learning, learn the latest.

I work to keep this course full of the most up-to-date Node material out there. This course is compatible with the latest Node.js version.

You’re getting access to hot-off-the-press features.

Everything you need comes in one easy-to-use package.

You can stop worrying if you're learning the right skills to build an app or land a new job. I've curated all the tech that's essential to building real-world apps. I've mapped out everything in a comprehensive, easy-to-follow package designed to get you up and running in a few weeks.

There’s no better time to learn Node.

According to the 2016 Stack Overflow Survey, Node is in the top ten for back-end popularity and back-end salary, with an average salary of $85k. This means more jobs and more opportunities for you.

You might get stuck. But I’m here to help.

There’s nothing worse than getting five hours into a course, getting stuck, and not getting the help you need to continue.

I’m in the Q&A everyday to help you get unstuck. I reply to every question to get you back on track.

Don’t take my word for it. Check the reviews and see what other students are saying.

“Any questions people seem to have are answered swiftly, clearly, and often with examples posted on GitHub. Even when the questions asked are out of the scope of the course Andrew seems to come up trumps." - Adam Tait

"This is amazing. What's even better is the instructor answered all the questions I asked." - Pak Chu

"The real value in this course is Andrew; he is not just a great teacher, but also he's quick to answer questions and provide feedback." - Nick Hester

I guarantee this is the most up-to-date and engaging Node course available, and it comes with a 30-day money-back guarantee.

During eight chapters you'll learn:

1. Node.js

2. Npm

3. Asynchronous programming

4. ES6/ES7

5. MongoDB

6. Express

7. Socket.IO

8. JWT Authentication

9. Mongoose

10. File and image uploads

11. Email sending

12. Application deployment with Heroku

13. Version control with Git

14. GitHub

15. REST API Design

16. Code testing

17. Debugging

18. Jest

19. Many more tools

I can’t wait to see you on the inside!

- Andrew


The Complete Node.js Developer Course (3rd Edition)
The Complete Node.js Developer Course (3rd Edition)
The Complete Node.js Developer Course (3rd Edition)
The Complete Node.js Developer Course (3rd Edition)



Welcome to the Class!

Grab the PDF Guide

Installing and Exploring Node.js

Section Intro: Installing and Exploring Node.js

Installing Node.js and Visual Studio Code

What is Node.js?

Why Should I Use Node.js?

Your First Node.js Script

Node.js Module System (Notes App)

Section Intro: Node.js Module System

Importing Node.js Core Modules

Importing Your Own Files

Importing npm Modules

Printing in Color

Global npm Modules and nodemon

File System and Command Line Args (Notes App)

Section Intro: File System and Command Line Args

Getting Input from Users

Argument Parsing with Yargs: Part I

Argument Parsing with Yargs: Part II

Storing Data with JSON

Adding a Note

Removing a Note

ES6 Aside: Arrow Functions

Refactoring to Use Arrow Functions

Listing Notes

Reading a Note

Debugging Node.js (Notes Apps)

Section Intro: Debugging Node.js

Debugging Node.js

Error Messages

Asynchronous Node.js (Weather App)

Section Intro: Asynchronous Node.js

Asynchronous Basics

Call Stack, Callback Queue, and Event Loop

Making HTTP Requests

Customizing HTTP Requests

An HTTP Request Challenge

Handling Errors

The Callback Function

Callback Abstraction

Callback Abstraction Challenge

Callback Chaining

ES6 Aside: Object Property Shorthand and Destructuring

Destructuring and Property Shorthand Challenge

Bonus: HTTP Requests Without a Library

Web Servers (Weather App)

Section Intro: Web Servers

Hello Express!

Serving up HTML and JSON

Serving up Static Assets

Serving up CSS, JS, Images, and More

Dynamic Pages with Templating

Customizing the Views Directory

Advanced Templating

404 Pages

Styling the Application: Part I

Styling the Application: Part II

Accessing API from Browser (Weather App)

Section Intro: Accessing API from Browser

The Query String

Building a JSON HTTP Endpoint

ES6 Aside: Default Function Parameters

Browser HTTP Requests with Fetch

Creating a Search Form

Wiring up the User Interface

Application Deployment (Weather App)

Section Intro: Application Deployment

Joining Heroku and GitHub

Version Control with Git

Exploring Git

Integrating Git

Setting up SSH Keys

Pushing Code to GitHub

Deploying Node.js to Heroku

New Feature Deployment Workflow

Avoiding Global Modules

MongoDB and Promises (Task App)

Section Intro: Databases and Advanced Asynchronous Development

MongoDB and NoSQL Databases

Installing MongoDB on macOS and Linux

Installing MongoDB on Windows

Installing Database GUI Viewer

Connecting and Inserting Documents

Inserting Documents

The ObjectID

Querying Documents


Updating Documents

Deleting Documents

REST APIs and Mongoose (Task App)

Section Intro: REST APIs and Mongoose

Setting up Mongoose

Creating a Mongoose Model

Data Validation and Sanitization: Part I

Data Validation and Sanitization: Part II

Structuring a REST API

Installing Postman

Resource Creation Endpoints: Part I

Resource Creation Endpoints: Part II

Resource Reading Endpoints: Part I

Resource Reading Endpoints: Part II

Promise Chaining

Promise Chaining Challenge


Async/Await: Part II

Integrating Async/Await

Resource Updating Endpoints: Part I

Resource Updating Endpoints: Part II

Resource Deleting Endpoints

Separate Route Files

API Authentication and Security (Task App)

Section Intro: API Authentication and Security

Securely Storing Passwords: Part I

Securely Storing Passwords: Part II

Logging in Users

JSON Web Tokens

Generating Authentication Tokens

Express Middleware

Accepting Authentication Tokens

Advanced Postman

Logging Out

Hiding Private Data

Authenticating User Endpoints

The User/Task Relationship

Authenticating Task Endpoints

Cascade Delete Tasks

Sorting, Pagination, and Filtering (Task App)

Section Intro: Sorting, Pagination, and Filtering

Working with Timestamps

Filtering Data

Paginating Data

Sorting Data

File Uploads (Task App)

Section Intro: File Uploads

Adding Support for File Uploads

Validating File Uploads

Validation Challenge

Handling Express Errors

Adding Images to User Profile

Serving up Files

Auto-Cropping and Image Formatting

Sending Emails (Task App)

Section Intro: Sending Emails

Exploring SendGrid

Sending Welcome and Cancelation Emails

Environment Variables

Creating a Production MongoDB Database

Heroku Deployment

Testing Node.js (Task App)

Section Intro: Testing Node.js

Jest Testing Framework

Writing Tests and Assertions

Writing Your Own Tests

Testing Asynchronous Code

Testing an Express Application: Part I

Testing an Express Application: Part II

Jest Setup and Teardown

Testing with Authentication

Advanced Assertions

Mocking Libraries

Wrapping up User Tests

Setup Task Test Suite

Testing with Task Data

Bonus: Extra Test Ideas

Real-Time Web Applications with Socket.io (Chat App)

Section Intro: Real-Time Web Applications with Socket.io

Creating the Chat App Project


Getting Started with Socket.io

Socket.io Events

Socket.io Events Challenge

Broadcasting Events

Sharing Your Location

Event Acknowledgements

Form and Button States

Rendering Messages

Rendering Location Messages

Working with Time

Timestamps for Location Messages

Styling the Chat App

Join Page

Socket.io Rooms

Storing Users: Part I

Storing Users: Part II

Tracking Users Joining and Leaving

Sending Messages to Rooms

Rendering User List

Automatic Scrolling

Deploying the Chat Application

Wrapping Up

Section Intro

New Feature Ideas

Bonus: What should I learn next?


Ivan8 October 2020

Очень подробный курс. Кому-то может показаться чуть затянутым, но зато все сразу понятно. По крайней мере пока)

Tristan7 October 2020

This was an excellent course. Andrew takes the time to walk through everything he's doing and explain it, even if he's covered it before. I found the repetition helped a lot to assimilate the material, as opposed to other courses where they show you something once, and then take it for granted that you remember it perfectly. Inevitably you end up pausing and sifting through the older videos, trying to find the place where the concept you've forgotten was explained. Not a problem with Andrew's course. I would highly recommend!

Mathew7 October 2020

Quite slow for my taste, but nevertheless awesome content and interactive learning, will definitely recommend the course to other students.

Theophile7 October 2020

Excellent course to learn Node.js fundamentals, it's beginner-friendly while still giving a lot of tools and information to process. Looking forward to take the react course taught by Andrew!

Crystal6 October 2020

was good reinforcement for a node js course i took in school that was suddenly rendered to remote learning due to covid. Nice to be able to take my time typing out the code and replaying the concepts to "get them"

27 February 2020

I'm a foreigner but listening to his explanation in English I find it very easy to understand.That was a great course

Noel26 February 2020

Good class, but I feel like it should have had some more frontend exercises, and perhaps even a basic overview of something like React!

Gio24 February 2020

Andrew is a great teacher. I don't feel like it's too difficult because he explains things so well. 10/10.

Jeff24 February 2020

I am liking the program. Ran into some terminal errors that I couldnt figure out but after learning about Sudo from a friend, I got rolling again right away.

Roberto23 February 2020

Excellent course! I learned topics and better practical items to include in my next projects. Thanks for being so detailed.

Rohit22 February 2020

Almost completed till the notes app project, and finding it absolutely relishing.... thanks Andrews for this beautiful course, the course design especially with those coding challenges, explanation, flow, and those 'playground' method of explaining a relevant topic in detail is very helpful....looking forward to research more courses of Andrews on Udemy.

Minh21 February 2020

This course is really amazing. Its very strait forward. Very easy to understand. The most amazing thing i love with this course is that it really have hands-on challenge after you learn something. Not many courses on Udemy have that !!

Brian21 February 2020

The insane disc jockey, over-the-top loud and happy voice is such an obvious put-on that it's grating to go through the course. As of right now, I'm not sure i'll make it all the way through regardless of the quality of the content.

Pramod20 February 2020

By this video I can actually understand the purpose of node and role of v8 engine and underhood roll of c++ language. Great explanation

Paula19 February 2020

I felt there could me more information about installation. Node is not "that easy" to install actually. But overall, its very nice. Loved the VSCode recommendation.


Expired6/7/201988% OFF


Udemy ID


Course created date


Course Indexed date
Course Submitted by

Android PlayStore
Apple Appstore