How it works
Node.js takes V8, the JavaScript engine from Chrome, and adds what a server needs: files, networking, processes and timers. It handles many connections on one thread with an event loop: while one request waits for the database, Node serves others instead of sitting idle. That suits work that mostly waits on networks and disks, such as APIs, realtime apps and proxies.
It comes with npm, a registry of millions of open-source packages, and almost every JavaScript tool (Next.js, Vite, ESLint) runs on it. Recent versions include a test runner, fetch, a watch mode and the ability to run TypeScript files by stripping out the types. Heavy CPU work, such as resizing large images, blocks the event loop, so it belongs in worker threads or a separate service. Production servers usually run a long-term support (LTS) release.
Node.js pros and cons
Pros
- One language, JavaScript or TypeScript, across frontend and backend
- Huge package ecosystem on npm for almost any task
- Handles many simultaneous connections with little memory
- Supported by every host, cloud and serverless platform
Cons
- CPU-heavy work blocks the event loop unless moved to worker threads
- Deep dependency trees add security and maintenance work
- Few conventions, so each project picks its own structure
When to use Node.js
Pick it when
- APIs and web backends written by a JavaScript or TypeScript team
- Realtime features such as chat, notifications and live updates
- You want the widest choice of hosts, libraries and developers
Skip it when
- The work is mostly heavy number crunching or machine learning, where Python, Go or Rust fit better
Node.js pricing
Node.js vs the alternatives
Related terms
More in Backend and APIs
Runtimes