This curriculum teaches you how to build back end applications and APIs using Node.js and Express. You will work through guided lessons that introduce new concepts step by step, then apply what you have learnt in independent practice projects.
Whether you are using GitHub Codespaces or a Local Dev Container, follow these steps once your environment has finished loading:
- Open the Command Palette: Press
Ctrl+Shift+Pon Windows and Linux orCmd+Shift+Pon Mac. - Start the Course: Search for and run
freeCodeCamp: Run Course. - Select a Project: The Simple Browser tab will open. Select your desired lab or workshop from the menu to start.
You do not need to create a new machine or environment to take another lab or workshop. To start a new lab or switch projects:
- Click the freeCodeCamp logo in the Simple Browser tab.
- Select any lab from the list (for example, Build a Case Converter, Build a Prime Number Checker Module).
- Blank Screen on Launch: Click the refresh icon in the top toolbar of the Simple Browser tab.
- Reopening the Course Tab: If you accidentally close the course panel, re-run
freeCodeCamp: Run Coursefrom the Command Palette. - Environment Loading: If
freeCodeCamp: Run Courseisn't found immediately upon opening the workspace, wait a minute for VS Code extensions to finish initializing.
You will learn the Node.js REPL and command-line interface by exploring the runtime from the terminal.
You will learn Node.js built-in modules like fs, path, and crypto by using them for file operations and data processing.
You will learn how to initialize, configure, and publish an NPM module by building a case converter.
Practice building and exporting an NPM module by creating a prime number checker.
You will learn the Node.js http module by building a web server to serve a multi-page client application.
You will learn basic Express routing and response methods by building a random joke app.
Practice building an Express server and JSON API by creating a personal profile application.
You will learn application-level and router-level middleware by building a structured submission form.
Practice creating custom Express middleware by building a data sanitizer and validator.
You will learn route parameters and modular routing with express.Router by building a weather service API.
Practice building a RESTful API with date parsing logic by creating a timestamp microservice.
You will learn Express 5 error handling, health checks, and graceful shutdowns by building a bank API.
You will learn Node.js WebSockets and real-time data streaming by building a system resource monitor.
Practice building a real-time multi-client chat server using Node.js WebSockets.
You will learn JSON Web Token authentication and role-based authorization by building a secure Express API with register, login, logout, and protected routes.
Practice authentication and authorization by building a family movie watchlist HTTP API.