Is Node.js a framework?
Updated August 29, 2026
Node.js is a JavaScript runtime, not a framework. It provides the engine and APIs needed to execute JavaScript on a server or from the command line.
Frameworks and libraries use that runtime to provide routing, middleware, validation, rendering, or application structure. Express, Fastify, NestJS, and Hapi are examples from the Node ecosystem, but they make different trade-offs. You can also build a small HTTP service with Node's built-in node:http module:
import { createServer } from 'node:http';
createServer((req, res) => res.end('ok')).listen(3000);
The distinction matters when reading installation instructions: installing Node does not install Express, and installing a framework does not replace the Node runtime. Choose the smallest set of dependencies that fits the project, then pin and update them through the project's package manager.
Sources
related.
Ruslan Osipov
About the author