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

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

4.68 (61901 reviews)
Programming Languages
35 hours
Mar 2021
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


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) - Screenshot_01The Complete Node.js Developer Course (3rd Edition) - Screenshot_02The Complete Node.js Developer Course (3rd Edition) - Screenshot_03The Complete Node.js Developer Course (3rd Edition) - Screenshot_04
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 (Chat App)
Section Intro: Real-Time Web Applications with
Creating the Chat App Project
Getting Started with Events 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 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?
19 November 2021
This course took me another level on back end programming, and Andrew is very detailed-oriented in this course, which is something I really appreciate. Overall, I recommend this course to anyone who wants to learn Node.js and create useful apps which will take you to the next step in the web development.
16 November 2021
Andrew is a fantastic teacher. I've been a professional software developer for over three years, and he managed to clearly and concisely explain a few topics I had previously struggled to conceptualize. In addition, his approach is very pragmatic, allowing you to fully envision how you could apply these tools and techniques to building a real-world application from the ground up. I'm really looking forward to using everything I learned in this course to bring one of my own ideas to life. Thank you, Andrew!
16 November 2021
This course is very very nice but it is old. Saying old I mean the new tools have already overridden the old ones used in this course. I would love to share this course with my friends but please provide the use of new node features.
15 November 2021
I took v1 of this course and my biggest complaint was seeing Andrew the entire video. He's great but it got in the way of the lecture. Much better format now. Also truly appreciate that the course starts from scratch and only adds tools like nodemon AFTER you understand what the tool is trying to solve. So many courses ignore or are unaware how impactful that is. I'm on section 4 and it's really starting to get good with arrow functions.
15 November 2021
this was really good, he goes nice and slow for me to understand, but is still not complety slow down
13 November 2021
I thought this course was great. It was very well organized and it definitely helped me to learn a lot about Node. This course has a few things that are out of date at this point, but in most cases, I was able to quickly figure out why I was having issues by going to the comments. Andrew has been a great teacher and there's a good chance that I will take more of his courses in the future!
11 November 2021
As a iOS developer looking to broaden my field. I can say for sure that I got a nice kick start for my journey in becoming a backend developer. Now I know enough basics to declare myself a backend developer. Thanks Andrew. It's been a ride. I am moving onto Kotlin+Spring Boot tho, because I can't really get over the fact that Javascript is a dynamically typed language. But I am pretty sure the transition would be smooth as hell thanks to everything this guy taught me. Thanks for Everything. My 2 cents coming from production level programming is, it'd be great if you can teach the students how to scale up the project to handle millions of asynchronous requests and split up the database and deploy multiple servers. Well if you left that out for us to find out. I will gladly make the leap. Peace ?
11 November 2021
The API's in the project are outdated, In between he comes and say that i'm from future and explains further which is quit annoying. Secondly the project's he is developing are too basic and are definitely not going to enhance your resume.
11 November 2021
Excellent teaching style. There are little coding challenges in the lectures to get better with the provided material.
9 November 2021
Till now i have watched several videos of this course and the way of Andriew's teaching is jst amazing .
9 November 2021
Loving it. Amazing instructor, so clear and not overwhelming. I will buy more of Andrews' courses for sure!
8 November 2021
Well, I started to learn Node.js for the reason I want to do some real-time applications. Then I found this course and this is what I want.
4 November 2021
I think Andrew gives a solid foundation of what nodeJS is by teaching me the npm libraries. I love his enthusiasm when closing each lecture with "I'm excited to do that with you" because they make me excited too :):) But near the end (section ~13 onwards), I also feel rushed and dump-truck-on. It feels like I was taught new features without putting as in-depth as before. I feel like exams are here and professor Andrew needs to finish the curriculum no matter what. Having worked with Java + Angular, I am now having trouble doing something similar with NodeJS + Angular. Maybe once I figure this part out I'll be happier
28 October 2021
The course covered everything I wanted to know about Node.js and the teaching style was clear. Thank you.
11 October 2021
Its a really good course for someone having a little bit of experience in the world of Development. Andrew explains stuff in detail in a clear and concise manner. The best thing about this course is its structure. Its easy to undersand and follow and allows me to test myself sufficiently and feel confident. No complains as of now (I am halfway through, which is rare in Udemy for me), will update if any in the future. Cheers. Great work Andrew and Thank you!


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


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

Enrollment distribution

The Complete Node.js Developer Course (3rd Edition) - Distribution chart
6/7/201988% OFF
udemy ID
course created date
course indexed date
course submited by