Skip to main content
CF

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

35h 4m 4s
English
Paid

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.

Why Choose This Course?

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.

Hands-On Learning Experience

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 designed to reinforce what you’ve learned. This will give you the hands-on experience necessary to create and launch your own project once you’re done. You’ll be building four projects:

  • A note-taking app to get your feet wet
  • A weather application that interacts with the MapBox and Dark Sky APIs
  • A task manager REST API complete with user accounts and authentication
  • 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.

Stay Up-To-Date with Node.js

When learning, learn the latest. This course is continuously updated to ensure you are learning the latest Node material available. It is compatible with the latest Node.js version, providing you access to new features as they are released.

Comprehensive Learning Package

Everything you need comes in one easy-to-use package. Stop worrying if you're learning the right skills to build an app or land a new job. This course curates all essential technology in a comprehensive, easy-to-follow package designed to get you up and running in a few weeks.

The Demand for Node Skills

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 salaries, with an average salary of $85k. This translates to more jobs and more opportunities for you.

Support When You Need It

You might get stuck. But I’m here to help. There’s nothing worse than being stuck midway through a course and not getting the help you need. I’m in the Q&A every day to assist and reply to every question to get you back on track.

Student Testimonials

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.

Course Curriculum

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

Requirements

  • A computer on which you can install software (Windows, MacOS, or Linux)
  • A basic understanding of JavaScript (variables, functions, objects, arrays, if statements)

Who This Course is For

  • Anyone looking to launch their own Node applications, switch careers, or freelance as a Node developer

What You'll 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

About the Author: Udemy

Udemy thumbnail

Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.

Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.

Watch Online 177 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 177 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome to the Class!
All Course Lessons (177)
#Lesson TitleDurationAccess
1
Welcome to the Class! Demo
06:59
2
Grab the PDF Guide
01:05
3
Section Intro: Installing and Exploring Node.js
00:57
4
Installing Node.js and Visual Studio Code
08:52
5
What is Node.js?
15:32
6
Why Should I Use Node.js?
16:25
7
Your First Node.js Script
06:20
8
Section Intro: Node.js Module System
01:04
9
Importing Node.js Core Modules
16:29
10
Importing Your Own Files
16:36
11
Importing npm Modules
16:58
12
Printing in Color
14:24
13
Global npm Modules and nodemon
08:44
14
Section Intro: File System and Command Line Args
00:56
15
Getting Input from Users
09:46
16
Argument Parsing with Yargs: Part I
15:22
17
Argument Parsing with Yargs: Part II
11:22
18
Storing Data with JSON
17:52
19
Adding a Note
18:34
20
Removing a Note
15:00
21
ES6 Aside: Arrow Functions
14:15
22
Refactoring to Use Arrow Functions
14:32
23
Listing Notes
05:31
24
Reading a Note
11:51
25
Section Intro: Debugging Node.js
01:33
26
Debugging Node.js
17:12
27
Error Messages
04:54
28
Section Intro: Asynchronous Node.js
01:15
29
Asynchronous Basics
08:01
30
Call Stack, Callback Queue, and Event Loop
18:15
31
Making HTTP Requests
24:32
32
Customizing HTTP Requests
19:42
33
An HTTP Request Challenge
18:32
34
Handling Errors
18:43
35
The Callback Function
16:19
36
Callback Abstraction
18:54
37
Callback Abstraction Challenge
14:56
38
Callback Chaining
13:35
39
ES6 Aside: Object Property Shorthand and Destructuring
15:05
40
Destructuring and Property Shorthand Challenge
12:45
41
Bonus: HTTP Requests Without a Library
16:01
42
Section Intro: Web Servers
01:41
43
Hello Express!
18:22
44
Serving up HTML and JSON
07:04
45
Serving up Static Assets
14:50
46
Serving up CSS, JS, Images, and More
11:31
47
Dynamic Pages with Templating
20:05
48
Customizing the Views Directory
07:27
49
Advanced Templating
16:25
50
404 Pages
14:02
51
Styling the Application: Part I
16:57
52
Styling the Application: Part II
13:48
53
Section Intro: Accessing API from Browser
00:53
54
The Query String
17:08
55
Building a JSON HTTP Endpoint
10:32
56
ES6 Aside: Default Function Parameters
11:53
57
Browser HTTP Requests with Fetch
12:53
58
Creating a Search Form
14:19
59
Wiring up the User Interface
14:07
60
Section Intro: Application Deployment
01:04
61
Joining Heroku and GitHub
09:48
62
Version Control with Git
07:52
63
Exploring Git
07:00
64
Integrating Git
17:11
65
Setting up SSH Keys
08:48
66
Pushing Code to GitHub
11:58
67
Deploying Node.js to Heroku
15:56
68
New Feature Deployment Workflow
16:05
69
Avoiding Global Modules
08:38
70
Section Intro: Databases and Advanced Asynchronous Development
01:10
71
MongoDB and NoSQL Databases
08:07
72
Installing MongoDB on macOS and Linux
08:11
73
Installing MongoDB on Windows
08:31
74
Installing Database GUI Viewer
06:55
75
Connecting and Inserting Documents
19:19
76
Inserting Documents
16:43
77
The ObjectID
15:14
78
Querying Documents
17:13
79
Promises
18:04
80
Updating Documents
16:07
81
Deleting Documents
07:47
82
Section Intro: REST APIs and Mongoose
01:05
83
Setting up Mongoose
16:39
84
Creating a Mongoose Model
05:27
85
Data Validation and Sanitization: Part I
17:35
86
Data Validation and Sanitization: Part II
11:57
87
Structuring a REST API
15:22
88
Installing Postman
08:14
89
Resource Creation Endpoints: Part I
20:30
90
Resource Creation Endpoints: Part II
09:02
91
Resource Reading Endpoints: Part I
13:54
92
Resource Reading Endpoints: Part II
06:38
93
Promise Chaining
19:11
94
Promise Chaining Challenge
07:20
95
Async/Await
17:41
96
Async/Await: Part II
12:21
97
Integrating Async/Await
16:17
98
Resource Updating Endpoints: Part I
16:01
99
Resource Updating Endpoints: Part II
08:50
100
Resource Deleting Endpoints
09:53
101
Separate Route Files
14:49
102
Section Intro: API Authentication and Security
01:05
103
Securely Storing Passwords: Part I
11:30
104
Securely Storing Passwords: Part II
19:21
105
Logging in Users
13:31
106
JSON Web Tokens
12:04
107
Generating Authentication Tokens
13:46
108
Express Middleware
12:56
109
Accepting Authentication Tokens
20:00
110
Advanced Postman
17:26
111
Logging Out
11:13
112
Hiding Private Data
11:06
113
Authenticating User Endpoints
12:19
114
The User/Task Relationship
19:23
115
Authenticating Task Endpoints
15:56
116
Cascade Delete Tasks
05:27
117
Section Intro: Sorting, Pagination, and Filtering
01:22
118
Working with Timestamps
06:49
119
Filtering Data
11:41
120
Paginating Data
11:04
121
Sorting Data
11:09
122
Section Intro: File Uploads
00:59
123
Adding Support for File Uploads
19:02
124
Validating File Uploads
15:15
125
Validation Challenge
04:37
126
Handling Express Errors
08:17
127
Adding Images to User Profile
15:11
128
Serving up Files
07:57
129
Auto-Cropping and Image Formatting
11:48
130
Section Intro: Sending Emails
00:58
131
Exploring SendGrid
17:01
132
Sending Welcome and Cancelation Emails
16:27
133
Environment Variables
19:10
134
Creating a Production MongoDB Database
15:29
135
Heroku Deployment
19:31
136
Section Intro: Testing Node.js
01:41
137
Jest Testing Framework
15:58
138
Writing Tests and Assertions
17:55
139
Writing Your Own Tests
06:20
140
Testing Asynchronous Code
14:14
141
Testing an Express Application: Part I
05:55
142
Testing an Express Application: Part II
14:19
143
Jest Setup and Teardown
14:28
144
Testing with Authentication
13:12
145
Advanced Assertions
12:49
146
Mocking Libraries
05:58
147
Wrapping up User Tests
16:21
148
Setup Task Test Suite
15:11
149
Testing with Task Data
16:16
150
Bonus: Extra Test Ideas
02:48
151
Section Intro: Real-Time Web Applications with Socket.io
00:50
152
Creating the Chat App Project
13:15
153
WebSockets
06:09
154
Getting Started with Socket.io
12:03
155
Socket.io Events
17:11
156
Socket.io Events Challenge
15:40
157
Broadcasting Events
06:23
158
Sharing Your Location
15:12
159
Event Acknowledgements
13:26
160
Form and Button States
11:23
161
Rendering Messages
12:46
162
Rendering Location Messages
10:29
163
Working with Time
20:28
164
Timestamps for Location Messages
07:06
165
Styling the Chat App
13:11
166
Join Page
06:18
167
Socket.io Rooms
14:38
168
Storing Users: Part I
17:16
169
Storing Users: Part II
07:59
170
Tracking Users Joining and Leaving
14:12
171
Sending Messages to Rooms
14:30
172
Rendering User List
11:38
173
Automatic Scrolling
16:04
174
Deploying the Chat Application
08:07
175
Section Intro
00:51
176
New Feature Ideas
04:00
177
Bonus: What should I learn next?
02:40
Unlock unlimited learning

Get instant access to all 176 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

Frequently asked questions

What are the prerequisites for this course?
Before starting this course, a basic understanding of JavaScript is recommended. The course begins with the fundamentals of Node.js, so no prior knowledge of Node.js is required. Familiarity with command line tools and version control systems like Git can be beneficial but is not mandatory.
What projects will I build during the course?
Throughout the course, students will build four main projects: a note-taking app to introduce basic Node.js concepts, a weather application that uses the MapBox and Dark Sky APIs, a task manager REST API featuring user accounts and authentication, and a real-time chat application with a client-side component. These projects are designed to provide hands-on experience with Node.js and related tools.
Who is the target audience for this course?
This course is ideal for JavaScript developers looking to expand their skills into backend development using Node.js. It is also suitable for those who have attempted learning Node.js before but found it difficult to grasp due to a lack of clear foundational instruction. The course aims to turn learners into professional Node developers.
What specific tools and platforms will I learn in this course?
The course covers various tools and platforms essential for Node.js development including Express for web server creation, Mongoose for MongoDB interaction, and npm for package management. Students will also learn to use Visual Studio Code for development and nodemon for automatic server restarting during development.
What topics are not covered in this course?
While the course covers a wide range of Node.js fundamentals and applications, it does not delve into advanced topics like clustering, microservices architecture, or in-depth database management beyond MongoDB. These topics might require additional resources or courses for comprehensive understanding.
How much time should I expect to invest in this course?
The course consists of 177 lessons. While the total runtime is not specified, students should plan to dedicate several weeks to thoroughly work through the material, especially if they are new to Node.js. Consistent practice and project work are crucial for mastering the concepts taught in this course.
How will this course benefit my career or future learning?
Completing this course will equip you with the skills to develop, test, and deploy real-world production applications using Node.js, enhancing your qualifications for backend development roles. The foundational knowledge gained will also be valuable for learning advanced Node.js topics or transitioning to full-stack development roles that require server-side JavaScript expertise.