Complete Node.js Developer in 2023: Zero to Mastery

46h 5s
English
Paid
January 25, 2024

Learn from Node.js experts. This is the only Node JS tutorial + projects course you need to learn Node, build advanced large-scale applications from scratch & get hired as a Backend Developer in 2023. Go from Zero To Node Mastery.

More
  • Build enterprise-level Node applications and deploy to the cloud (AWS)
  • Lead Node JS projects by making good architecture decisions and helping others on your team
  • Work with real-life data and the SpaceX API to build a NASA launch system to discover new planets that may contain life + other projects
  • Build a MERN (MongoDb, Express, React, Node) fullstack app and deploy to production
  • Become a top 10% Node Developer by learning advanced topics most courses don't cover
  • Master the latest ecosystem of a Backend Node JS Developer from scratch
  • Learn to build secure and performant, large-scale applications like a Senior Backend Developer
  • Use Node JS to build production grade apps including REST APIs and GraphQL APIs
  • Authentication, File I/O, Databases (SQL, MongoDB), Express Framework, Sockets, plus many other important topics a Backend Developer should know
  • Load balancing, Monitoring, CI/CD, and Zero Downtime Deployment
  • Learn security best practices throughout the course so you can be confident with your deployments

Watch Online Complete Node.js Developer in 2023: Zero to Mastery

Join premium to watch
Go to premium
# Title Duration
1 Course Outline 06:23
2 Node.js - How We Got Here 09:20
3 Node.js Runtime 08:20
4 How To Succeed In The Course 04:00
5 Latest Version Of Node.js 01:17
6 OPTIONAL: Installing Node.js 06:34
7 OPTIONAL: Windows Installation Tips 03:06
8 Node.js Release Cycle 04:05
9 The Node.js REPL 06:09
10 Setting Up Our Developer Environment 04:31
11 Our First Node App 11:36
12 Node.js VS JavaScript 05:46
13 The global Object 05:46
14 Introduction to Backend VS Frontend 08:56
15 What Node.js Includes 09:39
16 Node Internals Deep Dive 10:58
17 libuv Internals Deep Dive 12:54
18 Synchronous vs Asynchronous 05:24
19 Asynchronous Callbacks 05:56
20 Non-Blocking Input & Output 03:33
21 Exercise: Is JavaScript Asynchronous? 02:28
22 Multi-Threading, Processes, and Threads 11:41
23 Is Node.js Multi-Threaded? 10:57
24 The Event Loop 04:04
25 Callback Queues 04:52
26 Phases of the Event Loop 09:19
27 Comparing Node With PHP and Python 06:34
28 What Is Node.js Best At? 04:53
29 Observer Design Pattern 05:28
30 The Node Event Emitter 14:07
31 The require Function 02:50
32 Making HTTP Requests 11:10
33 Why Use Modules? 04:06
34 Creating Our Own Modules 13:04
35 Exporting From Modules 04:04
36 CommonJS vs ECMAScript Modules 04:12
37 Creating Our Own ECMAScript Modules 06:32
38 Module Caching 07:43
39 Using index.js 08:41
40 Should We Use index.js? 04:43
41 NPM: The Node Package Manager 04:40
42 Creating Our First NPM Package 09:24
43 Packages And The NPM Registry 01:57
44 Using Third Party Modules 11:12
45 The node_modules Folder 09:55
46 Semantic Versioning 02:38
47 package-lock.json and Versioning 09:43
48 Vulnerabilities In Dependencies 04:55
49 Installing NPM Tools: nodemon 09:57
50 Exploring Planets With Node 01:50
51 Importing Kepler Space Telescope Data 04:53
52 Setting Up Our CSV Parser 05:25
53 Streaming Large Data Files 05:33
54 Reading Our Planets Data 06:49
55 Parsing Our Planets Data 06:05
56 Finding Habitable Planets 08:27
57 Exploring Habitable Planets 07:19
58 What is a Web Server? 05:25
59 Introduction to HTTP Responses and Requests 03:58
60 HTTP Requests 07:42
61 HTTP Responses 13:37
62 Our First Webserver 10:13
63 HTTP APIs and Routing 09:01
64 Parameterized URLs 10:38
65 Same Origin Policy 09:24
66 Cross Origin Resource Sharing (CORS) 10:30
67 POSTing Data to the Server 11:32
68 Requests and Responses as Streams 11:51
69 Web Servers Recap 04:06
70 Why Express? 03:36
71 Introduction to Express 09:37
72 Express vs Next.js vs Koa 11:19
73 Route Parameters 09:05
74 Postman and Insomnia 06:08
75 Development Dependencies 03:50
76 Middleware 07:31
77 Writing Our Own Logging Middleware 10:26
78 POST Requests in Express 16:22
79 Model View Controller (MVC) 07:39
80 Model View Controller in Express 18:31
81 Express Routers 16:39
82 RESTful APIs 11:40
83 Create Read Update and Delete (CRUD) 06:57
84 Sending Files 06:07
85 Serving Websites With Node 09:46
86 Templating Engines 11:34
87 Layouts and Separation of Concerns 07:44
88 Introduction & Architecture 11:03
89 NASA Dashboard Front End Setup 05:48
90 NASA Dashboard Functionality 05:12
91 What You Need To Know 02:15
92 React.js Front End Code Walkthrough 18:11
93 API Server Setup 12:33
94 GET /planets 15:33
95 CORS Middleware 07:23
96 Models vs Controllers vs Routers 04:42
97 The Planets Model 05:31
98 Loading Data On Startup 15:41
99 Automating Full Stack Applications With NPM 13:45
100 Serving React.js Front End In Production 12:16
101 Logging Requests With Morgan 08:45
102 The Launches Model 12:57
103 GET /launches 16:57
104 Serving Applications With Client Side Routing 05:59
105 Working With Data Models: Building a Data Access Layer 08:50
106 POST /launches: Creating Launches 1 13:16
107 POST /launches: Creating Launches 2 10:42
108 POST /launches: Validation For POST Requests 12:40
109 Connecting POST /launches With Front End Dashboard 13:40
110 DELETE /launches: Aborting a Launch 1 13:06
111 DELETE /launches: Aborting a Launch 2 12:01
112 Updating Our Architecture Diagram 11:43
113 Testing In Node 03:27
114 Testing APIs With Jest 14:22
115 Testing API Endpoints With Supertest: GET 08:04
116 Testing API Endpoints With Supertest: POST 09:10
117 Testing API Endpoints With Supertest: Error Cases 06:49
118 Node Server Performance 04:16
119 Building A Simple Blocking Server 10:21
120 Real Life Blocking Functions 08:48
121 Running Multiple Node Processes 03:19
122 The Node Cluster Module 04:18
123 Clustering In Action 12:28
124 Maximizing Cluster Performance 07:41
125 Load Balancing 05:37
126 The PM2 Tool 02:27
127 Using PM2 To Create Clusters 09:39
128 Managing Live Clusters With PM2 06:11
129 Zero Downtime Restart 03:47
130 Improving Performance Of Our NASA Project 08:07
131 Worker Threads 08:22
132 Worker Threads In Action 08:16
133 Introduction to Databases 03:47
134 Comparing SQL vs NoSQL 08:11
135 Database Schemas & Schemaless Databases 03:46
136 Choosing a Database for our NASA Project 05:33
137 SQL vs MongoDB: Trends and Object-Relational Impedance Mismatch 08:19
138 SQL vs MongoDB: Schemas, References, and ACID Transactions 14:20
139 Setting up MongoDB Atlas 12:56
140 Connecting to MongoDB 08:55
141 Mongoose 05:25
142 Creating Mongoose Schema for Launches 15:19
143 Exercise: Creating Mongoose Schema for Planets 05:30
144 Creating Models From Schemas 04:31
145 Mongoose Models vs MVC Models 04:16
146 Inserting And Updating Documents 08:10
147 Finding Documents 06:49
148 The Upsert Operation 08:21
149 Exploring Data Using Atlas 04:53
150 Updating Project Architecture 05:10
151 ObjectIDs 03:52
152 Excluding Fields From The Response 03:31
153 Saving Launches 04:52
154 Listing All Launches 02:58
155 Referential Integrity 10:57
156 Auto Increment In MongoDB 07:29
157 Getting Latest Flight Number 05:59
158 Scheduling New Launches 09:01
159 Investigating A Mongoose Mystery 07:11
160 Aborting Launches 12:55
161 Updating Tests For Mongoose 1 15:03
162 Updating Tests For Mongoose 2 10:01
163 Working With SpaceX 02:48
164 The SpaceX API 03:23
165 Versioning Node APIs 09:10
166 Updating Our API Tests 01:01
167 Exploring SpaceX Launches API 05:40
168 Running Search Queries 13:05
169 Loading SpaceX Data In Our API 14:52
170 Mapping SpaceX Data To Our Database 11:57
171 Using Paginated APIs 08:00
172 Minimizing API Load 08:19
173 Persisting SpaceX Launches 06:41
174 Paginating Our Endpoints 1 07:58
175 Paginating Our Endpoints 2 15:28
176 Sorting Paginated Data 03:49
177 Cleaning Up Launch Data 03:34
178 Managing Secrets With Dotenv 09:05
179 Securing Leaked Secrets 05:10
180 Security and Authentication Overview 03:44
181 Encrypted Connections with SSL and TLS 06:29
182 Digital Certificates, Signing, and Man In The Middle Attacks 05:43
183 Setting Up Our Security Example 04:19
184 HTTPS With Node, Self Signed Certificates, and Public Key Cryptography 16:18
185 Helmet.js 09:47
186 Authentication vs Authorization 07:29
187 Social Sign In 05:12
188 API Keys 11:04
189 JWT Tokens 14:33
190 The OAuth Standard 05:41
191 OAuth 2.0 Authorization Code Flow 06:35
192 OAuth In Action with Single Sign On 15:16
193 Registering with the Google Authorization Server 14:12
194 Authentication Endpoints With Middleware 11:08
195 Passport.js 03:25
196 Dotenv for Client Secrets 08:24
197 Authentication With Google And OAuth 1 11:12
198 Authentication With Google And OAuth 2 11:46
199 Cookie Based Authentication 06:55
200 Sessions 03:34
201 Server VS Client Side Sessions With Cookies 09:05
202 Session Middleware in Express 09:51
203 Setting Up OAuth Cookie Session 12:35
204 Reading and Writing the OAuth Session 1 13:03
205 Reading and Writing the OAuth Session 2 06:45
206 Restricting Access to Endpoints 07:54
207 Implementing Logout 07:13
208 Experimenting With Fake Sessions 05:12
209 Wrap Up and Next Steps 05:55
210 Introduction to CI and CD 06:42
211 Continuous Integration 08:24
212 Continuous Development 09:38
213 Continuous Deployment 06:01
214 Pipelines 04:27
215 GitHub Actions 09:43
216 Setting Up GitHub Actions 05:37
217 Continuous Integration: Build Pipeline 12:03
218 Build Pipeline In Action 08:38
219 GitHub Actions Marketplace 03:08
220 Continuous Integration: Test Pipeline 11:21
221 Mocking Out Databases 05:19
222 Databases With Continuous Integration 10:19
223 Populating Data For Continuous Integration 08:51
224 Deploying to the Cloud 02:15
225 Serverless vs Containers 03:59
226 Virtual Machines 04:17
227 What is a Container? 05:00
228 Installing Docker 03:29
229 Running Our first Docker Container 05:39
230 Your DockerHub Account 01:40
231 Creating a Dockerfile 14:03
232 Improving Our Dockerfile With Layers 13:23
233 Updating Our API URL 02:17
234 Building NASA Project Docker Image 05:37
235 Running NASA Project in a Container 04:30
236 Pushing Images to Docker Hub 03:47
237 Exploring Amazon Web Services 06:29
238 Creating an EC2 Instance 1 07:51
239 Creating an EC2 Instance 2: Security 13:11
240 What is SSH? 02:59
241 Connecting To Our EC2 Instance With SSH 07:49
242 Setting Up Our EC2 Server 05:46
243 Deploying Our NASA API 10:39
244 GraphQL Overview 08:04
245 Our First GraphQL Query 08:16
246 GraphQL Queries In Action 05:48
247 GraphQL vs REST: Over-fetching & Under-fetching 10:53
248 GraphQL vs REST Summary 10:09
249 Exploring GraphQL Implementations 03:25
250 GraphQL In Node 11:02
251 GraphiQL 04:26
252 Designing An E-Commerce Schema 16:02
253 GraphQL Tools 03:40
254 Modularizing Large GraphQL Projects: Schemas 14:02
255 Resolvers 09:02
256 Modularizing Large GraphQL Projects: Resolvers 09:28
257 Filtering with Queries and Resolvers 10:21
258 Exercise: Query Products By ID 05:31
259 Mutations In Action 06:41
260 Implementing Mutations on the Server 10:11
261 Exercise: Add New Product Review 10:59
262 GraphQL With Apollo 07:16
263 Building an Apollo Server With Node.js 13:20
264 Introduction to Sockets 02:12
265 Polling 03:58
266 What is a Socket? 02:59
267 Sockets VS Polling 05:02
268 WebSockets 05:26
269 Introduction to socket.io 03:21
270 socket.io Client and Server APIs 08:44
271 Multiplayer Pong Overview 03:32
272 Reviewing Our Pong Front End 11:58
273 Multiplayer Pong Message Sequence 07:39
274 Setting Up a socket.io Server 04:31
275 Connecting to socket.io 04:04
276 Identifying Connected Clients 06:39
277 Listening for Events in the Pong Server 03:09
278 Broadcasting Events 02:47
279 Handling Events in the Pong Client 07:16
280 Implementing the Game Logic: Paddle 09:21
281 Implementing the Game Logic: Ball 08:47
282 What Happens When You Disconnect? 05:24
283 Using Socket.io with Express 11:46
284 Namespaces 06:06
285 Rooms 10:40
286 Why Deno? 06:01
287 Deno Runtime And V8 Engine 05:26
288 Deno Installation 04:42
289 MAC/LINUX Installation Tips 05:34
290 WINDOWS Installation Tips 01:18
291 Setting Up Our Developer Environment 05:16
292 Our First Deno App 08:19
293 The Most Important Video 01:00
294 Deno Internals And Architecture 12:40
295 Deno Metrics 06:51
296 Exercise: Deno Architecture 04:02
297 Deno Game Changers 09:59
298 Deno Game Changers 2 07:57
299 Will Deno Kill NodeJS? 02:09
300 Single Executable To Rule Them All 04:09
301 Deno Security 08:10
302 Deno Permissions 06:25
303 Deno Permissions 2 03:10
304 Deno Permissions 3 05:11
305 JavaScript Engine 05:29
306 Exercise: Javascript Engine 00:57
307 Inside the Engine 04:06
308 Exercise: JS Engine For All 02:34
309 Interpreters and Compilers 06:22
310 Inside the V8 Engine 08:57
311 Comparing Other Languages 04:16
312 Writing Optimized Code 08:54
313 WebAssembly 03:16
314 Call Stack and Memory Heap 14:38
315 Stack Overflow 03:22
316 Garbage Collection 04:31
317 Memory Leaks 06:35
318 Single Threaded 01:59
319 Exercise: Issue With Single Thread 02:41
320 Javascript Runtime 14:08
321 Node.js 06:28
322 Section Overview 04:52
323 Promises 22:27
324 ES8 - Async Await 15:23
325 ES9 (ES2018) 05:22
326 ES9 (ES2018) - Async 11:12
327 Job Queue 06:56
328 Parallel, Sequence and Race 10:01
329 ES2020: allSettled() 04:23
330 Threads, Concurrency and Parallelism 11:28
331 Pong Project Overview 02:04
332 JS - Create Canvas 15:51
333 JS - RequestAnimationFrame 17:45
334 JS - Game Over 13:15
335 Code Review 05:18
336 Introduction To TypeScript 01:28
337 Dynamic vs Static Typing 11:51
338 Strongly vs Weakly Typed 03:19
339 Static Typing In JavaScript 09:46
340 OPTIONAL: Installing TypeScript Compiler 03:51
341 TypeScript 11:34
342 TypeScript 2 03:17
343 TypeScript 3 07:25
344 TypeScript 4 05:39
345 TypeScript 5 06:40
346 TypeScript 6 04:49
347 TypeScript 7 03:35
348 TypeScript 8 06:05
349 TypeScript 9 01:22
350 TypeScript 10 01:24
351 Exercise: Building Amazon 05:35
352 Exercise: Building Amazon 2 05:29
353 5 Types Of Databases 05:38
354 Exercise: What Is A Database? 01:12
355 SQL Playground 01:55
356 What Is SQL? 02:18
357 What Is A Query? 06:28
358 Imperative vs Declarative 03:25
359 History of SQL 02:22
360 SQL Standards 04:26
361 Tables 03:46
362 Columns 04:08
363 Rows 02:28
364 Primary And Foreign Keys 05:04
365 Relational vs NoSQL, PostgreSQL vs MongoDB Databases 10:36
366 Scalability 04:20
367 Sharding 03:05

Similar courses to Complete Node.js Developer in 2023: Zero to Mastery