Back-end & frameworks
Node.js and Express: APIs and JavaScript servers
Create servers and REST APIs with JavaScript: modules, databases, Express and tests.
- Duration
- 21 h · 3 days
- Level
- Intermediate
- Format
- On site · Remote · Blended
- Max. group size
- 12 participants
Overview
This program teaches server-side development with Node.js. After understanding the event loop and asynchronous code, participants use native APIs, npm and modules, access databases, then build a REST API with Express. The course ends with testing, deployment and a tour of the platform's recent features.
Who this program is for
- Front-end JavaScript developers moving to the server side
- Back-end developers discovering Node.js
- Teams building an API for a web or mobile application
Prerequisites
- Advanced knowledge of JavaScript (asynchronous code, modules)
- Notions of HTTP and databases
Learning objectives
- Explain the event loop and handle asynchronous code
- Use native modules: file system, HTTP, events, processes
- Manage dependencies with npm
- Access MongoDB, PostgreSQL or Redis
- Build a REST API with Express
- Test and deploy a Node.js application
Detailed curriculum
6 modules · 21 h · 3 days
Day 1
Node.js and asynchronous programming
50% theory · 50% practice
- Why Node.js: architecture and use cases
- Event loop and non-blocking operations
- Callbacks, promises and async/await
- Handling asynchronous errors
- First server script
Native APIs and modules
30% theory · 70% practice
- File system and streams
- Events, processes and worker threads
- CommonJS modules and ES modules
- npm: dependencies, scripts, versions
- Environment variables and configuration
🛠 Hands-on workshops
Command-line tool1.5 h
Write a Node.js utility that processes files.
✅ Deliverable : A command-line tool
Day 2
HTTP server and static resources
50% theory · 50% practice
- Native HTTP server: requests and responses
- Manual routing and its limits
- Serving static files
- Server-side template engines
- Logging
Data access
30% theory · 70% practice
- Choosing a database: MongoDB, PostgreSQL, Redis
- Connection and queries from Node.js
- ORM and ODM: value and limits
- Connection pool and error handling
- Migrations and test datasets
🛠 Hands-on workshops
Data access layer1.5 h
Connect the application to a database and write the basic operations.
✅ Deliverable : A persistence module
Day 3
REST API with Express
30% theory · 70% practice
- Installation and structure of an Express project
- Routes, middleware and error handling
- Validating incoming data
- Token-based authentication
- Documenting the API
🛠 Hands-on workshops
Resource management API2 h
Build a complete API with CRUD and authentication.
✅ Deliverable : A secure REST API
Tests, deployment and evolution
50% theory · 50% practice
- Unit and API tests
- Containerize and deploy
- Security: dependencies, headers, rate limiting
- Recent Node.js features
- Review and ways to progress
Tools and technologies
DockerJavaScriptMongoDBNode.jsPostmanVisual Studio Code
Teaching methods
- Alternating short lectures and hands-on work
- Live demonstrations by the trainer
- Capstone project built throughout the modules
- Group corrections and discussion of best practices
Assessment
- Hands-on exercises corrected in each module
- Mini-project completed at the end of the course
- Knowledge-check quiz
Required equipment
- A computer with an internet connection
- Node.js installed, a code editor and an API testing tool (Postman or equivalent)
Resources provided
- Course materials and repository of corrected exercises
Career outcomes
- A working, tested and documented REST API
- A clean Node.js project architecture
- Basic server-side security reflexes