Tool
Node.js
JavaScript on the server
Run JavaScript on the server: modules, npm, files, events, async code, streams, HTTP, Express REST APIs, configuration, databases, testing and deployment.
16
Chapters
41
Hours (estimated)
1
Self-paced
Part-time
About 14 weeks
1 hour a day, 3 days a week
Full-time
About 5 weeks
3 hours a day, 3 days a week
Estimated from 16 chapters (notes, practice, labs, quiz, exercise, and challenge) plus the final exam. Go at your own pace.
Curriculum
16 chapters, each with a tutorial, a live example, a quiz, an exercise, a challenge, and class practice.
- 1
Introduction to Node.js
What Node.js is, how it runs JavaScript outside the browser, the event loop, installing Node, and running your first script.
- 2
Modules: CommonJS & ES Modules
Splitting code into files, require/module.exports, import/export, built-in modules, and how Node resolves modules.
- 3
npm & package.json
Initialising a project, installing dependencies and dev dependencies, semantic versioning, scripts, lockfiles, and npx.
- 4
The File System Module
Reading and writing files with fs/promises, JSON files, appending, folders, checking existence, and handling errors safely.
- 5
Path & URL Modules
Joining and resolving paths, extracting names and extensions, parsing URLs and query strings with the WHATWG URL API.
- 6
Events & the EventEmitter
Event-driven programming in Node — EventEmitter, on/once/emit, passing data, removing listeners, and the error event.
- 7
Asynchronous Programming: Callbacks, Promises & async/await
How async code runs in Node, callbacks and their problems, promises, async/await, running tasks in parallel, timeouts and error handling.
- 8
Streams & Buffers
Processing data piece by piece — Buffers, readable/writable/transform streams, pipeline, backpressure, and when streams beat reading whole files.
- 9
The HTTP Module: Building a Server
Creating a server with node:http, requests and responses, routing by method and path, status codes and headers, JSON bodies, and making HTTP requests with fetch.
- 10
Express Basics
Why frameworks, installing Express, routes and route parameters, query strings, JSON bodies, static files, and the request/response objects.
- 11
Building a REST API with Express
Designing resources and endpoints, CRUD operations, validation, consistent error responses, pagination and filtering, and testing with a REST client.
- 12
Middleware, Authentication & Error Handling
How Express middleware works, writing logging/auth middleware, the order of middleware, async errors, security middleware, and graceful error responses.
- 13
Configuration & Environment Variables
Keeping secrets out of code, process.env, .env files, validating configuration at startup, environment-specific settings, and the twelve-factor approach.
- 14
Working with Data: JSON, SQLite & Databases
Choosing storage, using a database from Node, parameterised queries, connection pooling, ORMs vs query builders, and migrations.
- 15
Testing & Debugging Node.js Apps
Unit tests with node:test or Vitest, testing APIs with Supertest, mocking, debugging with the inspector, logging, and common runtime errors.
- 16
Deploying Node.js to Production
Production readiness — process managers and containers, health checks, logging, graceful shutdown, performance, security checklist, and hosting options.
Node.js is free to study, self-paced. Pass the final exam to earn an optional Certificate of Completion for $40.