Backend · FOCUSED GUIDE

Learn Node.js.

Understand the runtime and build reliable HTTP APIs.

YOUR LEARNING PATH

Node.js essentials

Start with the essentials or pick the concept you need.

RECOMMENDED NEXTHow can Node handle many requests with one JavaScript thread?
Start learning
01Node internalsExplore concepts
  1. How can Node handle many requests with one JavaScript thread?2 min
  2. What do V8, libuv and the thread pool do?2 min
  3. What are the main event-loop phases?2 min
  4. Worker thread vs process: when would I use each?2 min
02HTTP & APIsExplore concepts
  1. Which HTTP status codes should I know?2 min
  2. PUT vs PATCH, and what does idempotent mean?2 min
  3. HTTP/1.1 vs HTTP/2 vs HTTP/3?2 min
  4. How do cookies and sessions work?2 min
  5. What is CORS? Does it protect an API from all clients?2 min
  6. How do ETag and caching work?2 min
  7. How should pagination and API versioning work?2 min
03Authentication & securityExplore concepts
  1. JWT vs refresh token: what is the difference?2 min
  2. OAuth vs OIDC: what is the difference?2 min
  3. How do I prevent injection, XSS, CSRF and SSRF?2 min
04Production engineeringExplore concepts
  1. What makes a backend ready for production?2 min
  2. When should I use a queue or Redis?2 min
  3. How do I handle backpressure and large uploads?2 min
  4. What should I check for slow APIs, memory growth or intermittent 500s?2 min
  5. What if the event loop, DB pool or third-party API is stuck?2 min
05Runtime & modulesExplore concepts
  1. CommonJS vs ES Modules: what is the difference?2 min
  2. What are streams, buffers and EventEmitter?2 min
  3. How do garbage collection and memory leaks work?2 min

What you will study in Node.js

Focused lessons organized by concept. Start with the explanation, trace the examples, and check your recall before moving on.

Node internals

Node.js is a JavaScript runtime designed to handle many operations that spend time waiting for I/O. It lets the operating system and supporting runtime facilities wait for work, then runs ready JavaScript callbacks on an event-loop thread. This makes one process useful for many concurrent connections without one JavaScript thread per request.

HTTP & APIs

An HTTP status code describes the outcome of an HTTP request using a standard numeric category. Clients use it to decide whether to use a result, correct a request, authenticate or retry. A response body can add application details, but should not contradict the status code.

Authentication & security

JWT is a token format, not a role: an access token can be a JWT or another format. An access token authorizes calls to an API, while a refresh token is used with the identity service to obtain new access tokens. Separating these roles limits how long a stolen access token is useful and supports longer login sessions.

Production engineering

Production readiness means an application can be operated, monitored and recovered under normal load and failure. Working business logic is only one part; configuration, resource limits, startup, shutdown and observability also affect users. A ready service should fail clearly and avoid accepting work it cannot safely complete.

Runtime & modules

CommonJS and ES Modules are two systems for dividing JavaScript code into reusable modules. CommonJS uses runtime require calls, while ES Modules provide standard import and export declarations with a statically described dependency structure. Their loading and interoperability rules depend on the runtime and file configuration.

Prerequisites
Related to Node.js
Expand your skills next