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

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

All Levels 4.6(39,927 Ratings) 163,550 Students enrolled
Created by Andrew Mead Last updated 01/2020 English English [Auto-generated]
What will i 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

Curriculum for this course
177 Lectures 34:33:20
Welcome
2 Lectures 00:08:02
  • Welcome to the Class! 00:06:58
  • Grab the PDF Guide 00:01:04
  • Section Intro: Installing and Exploring Node.js 00:00:56
  • Installing Node.js and Visual Studio Code 00:08:51
  • What is Node.js? 00:15:31
  • Why Should I Use Node.js? 00:16:24
  • Your First Node.js Script 00:06:19
  • Section Intro: Node.js Module System 00:01:03
  • Importing Node.js Core Modules 00:16:28
  • Importing Your Own Files 00:16:35
  • Importing npm Modules 00:16:57
  • Printing in Color 00:14:23
  • Global npm Modules and nodemon 00:07:22
  • Section Intro: File System and Command Line Args 00:00:55
  • Getting Input from Users 00:09:45
  • Argument Parsing with Yargs: Part I 00:15:21
  • Argument Parsing with Yargs: Part II 00:11:21
  • Storing Data with JSON 00:17:51
  • Adding a Note 00:18:33
  • Removing a Note 00:14:59
  • ES6 Aside: Arrow Functions 00:14:14
  • Refactoring to Use Arrow Functions 00:14:31
  • Listing Notes 00:05:30
  • Reading a Note 00:11:50
  • Section Intro: Debugging Node.js 00:01:32
  • Debugging Node.js 00:17:11
  • Error Messages 00:04:53
  • Section Intro: Asynchronous Node.js 00:01:14
  • Asynchronous Basics 00:08:00
  • Call Stack, Callback Queue, and Event Loop 00:18:14
  • Making HTTP Requests 00:14:50
  • Customizing HTTP Requests 00:18:26
  • An HTTP Request Challenge 00:18:31
  • Handling Errors 00:17:33
  • The Callback Function 00:16:18
  • Callback Abstraction 00:18:53
  • Callback Abstraction Challenge 00:13:43
  • Callback Chaining 00:13:34
  • ES6 Aside: Object Property Shorthand and Destructuring 00:15:04
  • Destructuring and Property Shorthand Challenge 00:06:50
  • Bonus: HTTP Requests Without a Library 00:14:20
  • Section Intro: Web Servers 00:01:40
  • Hello Express! 00:18:21
  • Serving up HTML and JSON 00:07:03
  • Serving up Static Assets 00:14:49
  • Serving up CSS, JS, Images, and More 00:11:30
  • Dynamic Pages with Templating 00:20:04
  • Customizing the Views Directory 00:07:26
  • Advanced Templating 00:16:24
  • 404 Pages 00:14:01
  • Styling the Application: Part I 00:16:56
  • Styling the Application: Part II 00:13:47
  • Section Intro: Accessing API from Browser 00:00:52
  • The Query String 00:17:07
  • Building a JSON HTTP Endpoint 00:10:31
  • ES6 Aside: Default Function Parameters 00:11:52
  • Browser HTTP Requests with Fetch 00:12:52
  • Creating a Search Form 00:14:18
  • Wiring up the User Interface 00:14:06
  • Section Intro: Application Deployment 00:01:03
  • Joining Heroku and GitHub 00:09:47
  • Version Control with Git 00:07:51
  • Exploring Git 00:06:59
  • Integrating Git 00:17:10
  • Setting up SSH Keys 00:08:47
  • Pushing Code to GitHub 00:11:57
  • Deploying Node.js to Heroku 00:15:55
  • New Feature Deployment Workflow 00:14:04
  • Avoiding Global Modules 00:08:37
  • Section Intro: Databases and Advanced Asynchronous Development 00:01:09
  • MongoDB and NoSQL Databases 00:08:06
  • Installing MongoDB on macOS and Linux 00:08:10
  • Installing MongoDB on Windows 00:08:30
  • Installing Database GUI Viewer 00:06:54
  • Connecting and Inserting Documents 00:19:18
  • Inserting Documents 00:16:42
  • The ObjectID 00:15:13
  • Querying Documents 00:17:12
  • Promises 00:18:03
  • Updating Documents 00:16:06
  • Deleting Documents 00:07:46
  • Section Intro: REST APIs and Mongoose 00:01:04
  • Setting up Mongoose 00:16:38
  • Creating a Mongoose Model 00:05:26
  • Data Validation and Sanitization: Part I 00:17:34
  • Data Validation and Sanitization: Part II 00:11:56
  • Structuring a REST API 00:15:21
  • Installing Postman 00:08:13
  • Resource Creation Endpoints: Part I 00:20:29
  • Resource Creation Endpoints: Part II 00:09:01
  • Resource Reading Endpoints: Part I 00:13:53
  • Resource Reading Endpoints: Part II 00:06:37
  • Promise Chaining 00:19:10
  • Promise Chaining Challenge 00:07:19
  • Async/Await 00:17:40
  • Async/Await: Part II 00:12:20
  • Integrating Async/Await 00:16:16
  • Resource Updating Endpoints: Part I 00:16:00
  • Resource Updating Endpoints: Part II 00:08:49
  • Resource Deleting Endpoints 00:09:52
  • Separate Route Files 00:14:48
  • Section Intro: API Authentication and Security 00:01:04
  • Securely Storing Passwords: Part I 00:11:29
  • Securely Storing Passwords: Part II 00:19:20
  • Logging in Users 00:13:30
  • JSON Web Tokens 00:12:03
  • Generating Authentication Tokens 00:13:45
  • Express Middleware 00:12:55
  • Accepting Authentication Tokens 00:19:59
  • Advanced Postman 00:17:25
  • Logging Out 00:11:12
  • Hiding Private Data 00:11:05
  • Authenticating User Endpoints 00:12:18
  • The User/Task Relationship 00:19:22
  • Authenticating Task Endpoints 00:15:55
  • Cascade Delete Tasks 00:05:26
  • Section Intro: Sorting, Pagination, and Filtering 00:01:21
  • Working with Timestamps 00:06:48
  • Filtering Data 00:11:40
  • Paginating Data 00:11:03
  • Sorting Data 00:11:08
  • Section Intro: File Uploads 00:00:58
  • Adding Support for File Uploads 00:19:01
  • Validating File Uploads 00:15:14
  • Validation Challenge 00:04:36
  • Handling Express Errors 00:08:16
  • Adding Images to User Profile 00:15:10
  • Serving up Files 00:07:56
  • Auto-Cropping and Image Formatting 00:11:48
  • Section Intro: Sending Emails 00:00:57
  • Exploring SendGrid 00:13:24
  • Sending Welcome and Cancelation Emails 00:16:26
  • Environment Variables 00:19:09
  • Creating a Production MongoDB Database 00:15:28
  • Heroku Deployment 00:19:30
  • Section Intro: Testing Node.js 00:01:40
  • Jest Testing Framework 00:15:57
  • Writing Tests and Assertions 00:17:54
  • Writing Your Own Tests 00:06:19
  • Testing Asynchronous Code 00:14:13
  • Testing an Express Application: Part I 00:05:54
  • Testing an Express Application: Part II 00:14:18
  • Jest Setup and Teardown 00:14:27
  • Testing with Authentication 00:13:11
  • Advanced Assertions 00:12:48
  • Mocking Libraries 00:05:57
  • Wrapping up User Tests 00:16:20
  • Setup Task Test Suite 00:15:10
  • Testing with Task Data 00:16:15
  • Bonus: Extra Test Ideas 00:02:47
  • Section Intro: Real-Time Web Applications with Socket.io 00:00:49
  • Creating the Chat App Project 00:13:14
  • WebSockets 00:06:08
  • Getting Started with Socket.io 00:12:02
  • Socket.io Events 00:17:10
  • Socket.io Events Challenge 00:15:39
  • Broadcasting Events 00:06:22
  • Sharing Your Location 00:15:11
  • Event Acknowledgements 00:13:25
  • Form and Button States 00:11:22
  • Rendering Messages 00:12:45
  • Rendering Location Messages 00:10:28
  • Working with Time 00:20:27
  • Timestamps for Location Messages 00:07:05
  • Styling the Chat App 00:13:10
  • Join Page 00:06:17
  • Socket.io Rooms 00:14:37
  • Storing Users: Part I 00:17:15
  • Storing Users: Part II 00:07:58
  • Tracking Users Joining and Leaving 00:14:11
  • Sending Messages to Rooms 00:14:29
  • Rendering User List 00:11:37
  • Automatic Scrolling 00:16:03
  • Deploying the Chat Application 00:08:06
  • Section Intro 00:00:50
  • New Feature Ideas 00:03:59
  • Bonus: What should I learn next? 00:02:39
Requirements
  • A computer on which you can install software (Windows, MacOS, or Linux)
  • A basic understanding of JavaScript (variables, functions, objects, arrays, if statements)
+ View more
Description

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

+ View more
Other related courses
08:10:00
4 139 $194.99 Free
00:32:06
4 17 $74.99 Free
01:10:04
4 21 $194.99 Free
09:38:31
Updated Mon, 03-Dec-2018
4.1 45 $19.99 Free
01:18:24
4.3 17 $74.99 Free
02:04:33
3.9 19 $89.99 Free
01:40:21
3.9 17 $74.99 Free
10:41:58
Updated Sun, 08-Jan-2017
4.1 74 Free
02:32:25
4.2 16 $199.99 Free
02:45:05
4.6 3 $49.99 Free
07:11:30
3.9 2 Free
06:41:02
3.5 13 Free
04:31:33
Updated Sun, 22-Jul-2018
4.2 33 Free
16:07:24
Updated Fri, 29-Nov-2019
4.2 69 Free
03:53:05
Updated Sat, 09-Jun-2018
3.5 1 Free
00:44:00
2.9 9 Free
01:50:59
4.7 11 $199.99 Free
02:11:35
Updated Thu, 19-Sep-2019
3.6 14 $44.99 Free
02:36:56
3.7 15 $79.99 Free
00:56:32
Updated Wed, 27-Nov-2019
2.2 12 Free
01:10:50
3.6 7 Free
01:42:18
Updated Fri, 08-Feb-2019
3.4 9 $104.99 Free
30:10:53
Updated Sat, 28-Dec-2019
4.3 15 $199.99 Free
04:53:56
3.6 9 Free
01:18:10
Updated Mon, 09-Dec-2019
3.4 8 Free
18:12:48
4.1 186 $194.99 Free
27:34:17
Updated Fri, 16-Nov-2018
4.3 4 $34.99 Free
17:35:40
Updated Sat, 29-Jun-2019
3.9 16 $199.99 Free
80:06:34
4.5 104 $149.99 Free
23:57:50
4.4 328 $194.99 Free
07:15:53
0 3 $19.99 Free
00:31:44
3.3 7 Free
02:54:43
Updated Thu, 06-Dec-2018
3.7 10 Free
02:17:50
Updated Sat, 23-Nov-2019
5 11 Free
04:10:44
Updated Wed, 08-May-2019
4 3 Free
04:27:38
4.1 13 Free
04:27:39
Updated Tue, 09-Jul-2013
4 13 Free
04:41:24
3.9 6 Free
14:29:45
4.3 7 Free
08:57:37
4.3 1 Free
09:03:46
4.1 5 Free
13:31:59
Updated Sat, 22-Jun-2019
4.2 10 Free
04:41:06
4.4 1 Free
04:56:55
4 6 Free
15:58:21
4.1 6 Free
04:16:05
4.1 1 Free
00:49:46
Updated Sun, 24-Jan-2016
3.7 0 Free
02:36:02
4.5 4 Free
01:21:34
4 3 Free
12:31:32
Updated Sun, 21-Apr-2019
4.3 13 $199.99 Free
21:01:18
4.2 9 $194.99 Free
09:20:06
Updated Wed, 01-Jan-2020
4.3 11 $149.99 Free
16:41:26
Updated Thu, 19-Dec-2019
4.4 8 $99.99 Free
15:57:03
4.3 10 $99.99 Free
23:24:42
4.7 13 $84.99 Free
01:49:37
3.9 7 $199.99 Free
34:31:53
4.6 16 $199.99 Free
01:41:05
Updated Sun, 19-Jan-2020
3.1 2 $49.99 Free
00:30:46
2.8 2 Free
10:34:28
5 5 $199.99 Free
06:02:44
Updated Mon, 13-Jan-2020
4 13 $174.99 Free
00:32:47
2.9 2 Free
12:02:26
3.9 6 Free
01:08:20
2 5 Free
02:38:29
Updated Wed, 15-Jan-2020
4.2 6 Free
01:13:00
0 13 $19.99 Free
01:38:23
Updated Tue, 21-Jan-2020
4.3 0 Free
02:50:51
0 16 $29.99 Free
04:06:59
3.9 1 Free
05:20:17
3.6 4 $194.99 Free
00:47:49
Updated Fri, 20-Dec-2019
3.7 1 Free
06:14:44
3.5 6 $64.99 Free
04:53:36
4.3 3 Free
03:51:04
4.4 7 $19.99 Free
01:55:03
4.4 2 $199.99 Free
01:23:43
3.7 5 $199.99 Free
49:06:38
Updated Wed, 29-Jan-2020
4.4 69 $149.99 Free
23:37:21
4.3 63 $199.99 Free
00:59:49
4.1 2 $99.99 Free
40:59:21
4.5 46 $199.99 Free
About the instructor
  • 83 Students
  • 2 Courses
+ View more
A Full-stack Developer & Teacher

I'm Andrew, a full-stack developer living in beautiful Philadelphia!

I launched my first Udemy course in 2014 and had a blast teaching and helping others. Since then, I've launched 3 courses with over 110,000 students and over 18,000 5-star reviews.

I currently teach JavaScript, React, and Node.

Before I ever heard about Udemy or thought about teaching, I created a web app development company. I've helped companies of all sizes launch production web applications to their customers. I've had the honor of working with awesome companies like Siemens, Mixergy, and Parkloco.

I have a Computer Science degree from Temple University, and I've been programming for just over a decade. I love creating, programming, launching, learning, teaching, and biking.

I can't wait to see you inside one of my courses!

Student feedback
4.6
Average rating
  • 0%
  • 1%
  • 11%
  • 57%
  • 128%
Comments
Free $84.99
Includes:
  • 34:33:20 On demand videos
  • 177 Lessons
  • Full lifetime access
  • Access on mobile and tv