NodeFree Course · Beginner → Advanced

The Complete Node.js Course

Learn server-side JavaScript from the ground up. Begin with the Node.js runtime, modules, npm, files, and asynchronous programming, then grow toward production APIs, databases, testing, security, performance, and scalable architecture.

All 7 phases available
52
Modules
7
Phases live
56h+
Of reading

Phase 1 · Node.js Foundations

Set up Node.js, learn the runtime, organize modules, use npm, work with files, and build a practical command-line app.

Module 1 Available

Introduction, Setup & Your First Program

Discover what Node.js is, install the current LTS release, and run JavaScript from both the terminal and the interactive REPL.

~34 min6 topicsStart
Module 2 Available

JavaScript Essentials for Node.js

Build the modern JavaScript foundation needed for Node.js with values, functions, objects, collections, destructuring, and clean control flow.

~46 min6 topicsStart
Module 3 Available

Inside the Node.js Runtime

Understand how V8, libuv, the global environment, and the process object work together to execute a Node.js program.

~38 min6 topicsStart
Module 4 Available

Modules & Code Organization

Split applications into focused files and create clear public APIs with both modern ES modules and CommonJS.

~42 min6 topicsStart
Module 5 Available

npm, Dependencies & Scripts

Create repeatable projects, install third-party packages safely, understand semantic versions, and automate common tasks with npm scripts.

~40 min6 topicsStart
Module 6 Available

Files, Paths & Essential Core APIs

Read, write, and organize local data safely using Node.js core modules and promise-based file-system operations.

~48 min6 topicsStart
Module 7 Available

Async Foundations, Events & Errors

Write reliable non-blocking programs with callbacks, promises, async/await, events, timers, and deliberate error handling.

~50 min6 topicsStart
Module 8 Available

Phase Project: Build a Task Tracker CLI

Combine the entire phase into a useful command-line task tracker that stores data, validates input, and handles failure cleanly.

~70 min6 topicsStart

Phase 2 · Web Servers & HTTP APIs

Understand HTTP, build native and Express servers, design REST APIs, compose middleware, handle errors, test endpoints, and ship a complete API.

Module 9 Available

HTTP Fundamentals & Your First Server

Understand the HTTP request-response contract and build a small JSON web server directly with Node.js core APIs.

~54 min6 topicsStart
Module 10 Available

Requests, Responses & Native Routing

Read bounded request bodies, validate JSON, extract route parameters, and organize a native Node.js server without a framework.

~58 min6 topicsStart
Module 11 Available

Express 5 Fundamentals & Routers

Move from native HTTP mechanics to focused Express applications with routes, routers, JSON parsing, and async handlers.

~56 min6 topicsStart
Module 12 Available

REST API Design & CRUD

Design predictable resource-oriented endpoints with correct methods, statuses, validation, filtering, pagination, and CRUD behavior.

~62 min6 topicsStart
Module 13 Available

Middleware, Validation & Composition

Build an intentional Express pipeline for request IDs, logging, validation, authorization boundaries, and reusable route behavior.

~58 min6 topicsStart
Module 14 Available

Configuration, Errors & Observability

Turn failures into safe, consistent API responses while validating configuration, producing useful logs, and shutting down cleanly.

~60 min6 topicsStart
Module 15 Available

API Testing & Documentation

Protect API contracts with Node's test runner, unit and integration tests, isolated server lifecycles, and concise OpenAPI documentation.

~64 min6 topicsStart
Module 16 Available

Phase Project: Build a Task REST API

Combine Phase 2 into a layered, tested Express API with CRUD routes, JSON persistence, validation, structured errors, and documentation.

~90 min6 topicsStart

Phase 3 · Databases & Persistent Data

Model relational and document data, use PostgreSQL and MongoDB safely, manage migrations and transactions, add caching, and build a durable API.

Module 17 Available

SQL & Relational Data Modeling

Design a PostgreSQL-ready relational model with tables, keys, constraints, joins, aggregates, and query-driven indexes.

~62 min6 topicsStart
Module 18 Available

PostgreSQL from Node.js

Connect through node-postgres, pool connections, parameterize queries, map rows, and integrate database lifecycle with the API.

~62 min6 topicsStart
Module 19 Available

Transactions & Concurrency

Preserve multi-step invariants with transactions, isolation, row locks, optimistic concurrency, and correct retry boundaries.

~66 min6 topicsStart
Module 20 Available

Repositories, Migrations & Data Access

Create stable persistence boundaries, evolve schemas with migrations, and test real database behavior without leaking SQL into routes.

~64 min6 topicsStart
Module 21 Available

MongoDB & Document Modeling

Model aggregates as documents, use the official MongoDB driver, design indexes, and choose embedding or references deliberately.

~62 min6 topicsStart
Module 22 Available

Mongoose Schemas & Validation

Use Mongoose for schemas, validation, middleware, queries, and controlled document serialization while respecting database constraints.

~58 min6 topicsStart
Module 23 Available

Redis & Application Caching

Apply cache-aside safely with node-redis, TTLs, invalidation, stampede protection, and observable cache behavior.

~60 min6 topicsStart
Module 24 Available

Phase Project: Data-Backed Task API

Replace JSON storage with PostgreSQL, migrations, transactions, integration tests, and a measured Redis read cache.

~100 min6 topicsStart

Phase 4 · Authentication & Security

Protect identities, sessions, tokens, permissions, input, secrets, dependencies, uploads, and multi-user data with defense in depth.

Module 25 Available

Web Security & Threat Modeling

Model assets, trust boundaries, abuse cases, and API risks before selecting controls, using defense in depth and least privilege.

~58 min6 topicsStart
Module 26 Available

Password Authentication & Sessions

Build registration and login with password hashing, constant-time verification, server-side sessions, secure cookies, and rotation.

~66 min6 topicsStart
Module 27 Available

JWTs, Access Tokens & Refresh Rotation

Use signed tokens only where they fit, validate every claim, rotate refresh tokens, revoke sessions, and prevent replay.

~66 min6 topicsStart
Module 28 Available

Authorization, RBAC & Multi-Tenancy

Enforce object ownership, roles, permissions, and tenant isolation at every query and service boundary.

~64 min6 topicsStart
Module 29 Available

API Hardening: Validation, Headers, CORS & CSRF

Harden Express input and browser boundaries with allowlists, parameterized queries, Helmet, precise CORS, CSRF defenses, and safe output.

~64 min6 topicsStart
Module 30 Available

Rate Limits, Secrets & Supply-Chain Security

Protect high-risk operations with layered throttling, secret management, dependency review, audit response, and secure configuration.

~60 min6 topicsStart
Module 31 Available

Secure File Uploads & Object Storage

Stream uploads through strict limits and type checks, isolate object storage, prevent path attacks, and serve untrusted files safely.

~62 min6 topicsStart
Module 32 Available

Phase Project: Secure Multi-User API

Add accounts, sessions, roles, tenant isolation, security middleware, audits, and abuse-case tests to the data-backed API.

~110 min6 topicsStart

Phase 5 · Advanced Node.js & Architecture

Master streams, runtime internals, parallel work, real-time systems, queues, architecture, and performance engineering.

Module 33 Available

Buffers, Streams & Backpressure

Process large and binary data safely with buffers, readable and writable streams, transforms, pipeline, and backpressure.

~66 min6 topicsStart
Module 34 Available

Event Loop, libuv & Async Internals

Reason precisely about phases, microtasks, nextTick, the worker pool, async context, latency, and event-loop saturation.

~64 min6 topicsStart
Module 35 Available

Worker Threads & Child Processes

Choose and operate worker threads, child processes, and process pools for CPU work, isolation, external tools, and parallel execution.

~68 min6 topicsStart
Module 36 Available

WebSockets & Real-Time Systems

Build authenticated real-time channels with connection lifecycle, heartbeats, rooms, ordering, backpressure, and horizontal scaling.

~68 min6 topicsStart
Module 37 Available

Queues & Background Jobs

Move durable work behind queues with idempotency, retries, backoff, dead-letter handling, scheduling, and observable workers.

~66 min6 topicsStart
Module 38 Available

Architecture, Dependency Injection & Patterns

Structure larger Node.js systems with explicit boundaries, dependency inversion, use cases, adapters, events, and modular monolith design.

~68 min6 topicsStart
Module 39 Available

Performance, Memory & Profiling

Measure latency, throughput, event-loop delay, CPU, allocation, and memory retention before applying targeted optimizations.

~70 min6 topicsStart
Module 40 Available

Phase Project: Real-Time Processing Service

Build a real-time job service combining WebSockets, queues, worker threads, streams, observability, and resilient architecture.

~120 min6 topicsStart

Phase 6 · Testing, Delivery & Production

Add deep testing, TypeScript, containers, CI/CD, observability, deployment, scaling, and reliability practices.

Module 41 Available

Advanced Testing with Node's Test Runner

Design a balanced test portfolio with node:test suites, hooks, mocks, fixtures, coverage, property checks, and deterministic concurrency.

~66 min6 topicsStart
Module 42 Available

Contract, End-to-End & Resilience Testing

Verify system boundaries with database integration, API contracts, end-to-end workflows, fault injection, and performance smoke tests.

~68 min6 topicsStart
Module 43 Available

TypeScript for Production Node.js

Migrate Node.js boundaries to strict TypeScript with narrowing, generics, runtime validation, typed errors, and correct ESM configuration.

~72 min6 topicsStart
Module 44 Available

Docker, Images & Local Infrastructure

Package Node.js into minimal reproducible images, run as non-root, compose dependencies, manage signals, and scan build artifacts.

~70 min6 topicsStart
Module 45 Available

CI/CD & Release Automation

Build a secure pipeline for clean installs, checks, tests, artifacts, migrations, staged deployments, and rollback-aware releases.

~66 min6 topicsStart
Module 46 Available

Observability: Logs, Metrics & Traces

Instrument services with structured logs, RED metrics, distributed traces, context propagation, sampling, dashboards, and alerts.

~68 min6 topicsStart
Module 47 Available

Deployment, Scaling & Reliability

Operate stateless Node.js services behind proxies with replicas, health probes, timeouts, load shedding, graceful shutdown, and reliability targets.

~72 min6 topicsStart
Module 48 Available

Phase Project: Production Delivery

Convert the secure API into a typed, containerized, observable service with CI/CD, production configuration, deployment, and operational documentation.

~120 min6 topicsStart