From setting up your environment through modules, async code, file I/O, HTTP and Express, SQLite, testing and running in production. Fifty lessons that take you to the point where you can assemble a notes API and a CLI yourself and keep them running. Every piece of code and result shown was produced by actually running Node.js v26.7.0.
The 50 lessons are grouped into seven chapters. Working through them in order is the best way,
but you are welcome to dip into whatever interests you.
Note: this cannot run inside the browser, so try it with your own node (version 22 or later).
You get to grips with how Node.js runs and set up your environment with a version manager. You cover the different console methods, command line arguments, environment variables and .env, so values can come in from outside.
You split code across files and pull in other people's. You pin down the difference between CommonJS and ES Modules along with the rules that decide which is which, then go on to package.json and semantic versioning in npm.
The high point of the course. You feel the problem with synchronous code by actually freezing the process, then work up through callbacks, promises and async/await. The chapter closes with the event loop and error handling.
From building paths through reading and writing files, working with directories and handling JSON. The second half — streams, EventEmitter, Buffer and readline — lets you push large amounts of data through at constant memory.
You write the server, the router and body parsing yourself with the raw http module before moving to Express. Knowing exactly what Express is doing for you, you go on to REST APIs and error design.
You move storage from a JSON file to SQLite, separate out configuration, and add validation with zod. The second half gathers the tools that keep your code correct: debugging, testing and linting.
TypeScript, logging, CLIs, child processes, worker_threads, measurement and graceful shutdown. You finish by assembling a notes API and CLI that pull all of it together.
Once you have finished all 50 lessons, add types with TypeScript for Beginners, or connect to the frontend with Next.js for Beginners. Membership unlocks every course.