Courses Node.js JavaScript on the server
Node.js runs JavaScript outside the browser: scripts, command-line tools and, above all, web APIs. From Express to streams, from authentication to deployment: build real back-end services. Prerequisite: the JavaScript track.
Start this course in Kodokon Foundations Beginner - the basics, step by step
What is Node.js? Install it and run your first scriptYou understand what Node.js is, install it on your machine, and run your first JavaScript script outside the browser. ES modules and npm: organizing your projectYou structure a Node project with package.json, ES modules, npm dependencies, and scripts. The file system: reading and writing with fs/promisesYou read and write files with the fs/promises module and build reliable paths thanks to the path module. Command-line scripts: arguments, environment, and exit codesYou write scripts that receive arguments with process.argv, read environment variables, and return an exit code. Your first native HTTP serverYou create a web server with Node's http module, respond to requests, and return JSON. Progression Intermediate - build real things
Advanced Proficient - advanced patterns and performance
Architecting an API: routes, controllers, servicesStructure your API into single-responsibility layers and wire them together with lightweight injection to make it testable. Persistence with SQLite: the data access layerUse better-sqlite3 with prepared statements, transactions, and a dedicated repository for fast, safe persistence. Input validation and error middlewareValidate data at the edge of the API and centralize all error handling in a single four-parameter middleware. Authentication: hashing, sessions vs JWTHash passwords with a costly function, choose between sessions and JWT with full awareness, and protect your routes with middleware. Testing your API: node:test, fetch, and a test databaseTest your routes end to end with node:test and fetch on an ephemeral port, each test getting its own in-memory SQLite database. Mastery Expert - architecture, internals and edge cases
The Node event loop: phases and pitfallsDiscover the libuv phases, the real difference between setImmediate and setTimeout, and how to detect a blocked event loop. Streams and backpressure: handling large filesProcess multi-gigabyte files with constant memory thanks to streams, pipeline, and backpressure. Securing an API in productionHarden a Node API in production: correct CORS, rate limiting, security headers, and defenses against the main OWASP API risks. Observability: logs, healthcheck, graceful shutdownMake your service observable and cleanly stoppable: JSON logs, liveness/readiness probes, and SIGTERM handling. Going to production: process manager, Docker, clusterShip to production: NODE_ENV, process manager, a correct Docker image, and multi-core scaling with cluster.