What is Node.js and How Does it Work?
What is Node.js?
Node.js is a runtime that lets you run JavaScript outside the browser — on servers, CLIs, and desktop apps. It's built on Chrome's V8 engine and uses a non-blocking, event-driven model that makes it excellent for I/O-heavy applications.
How Node.js Works
Node runs JavaScript on a single thread but handles thousands of concurrent connections using an event loop and asynchronous, non-blocking I/O. While one request waits on the database, Node serves others — it never sits idle.
Your First Server
const http = require("http");
const server = http.createServer((req, res) => {
res.writeHead(200, { "Content-Type": "text/plain" });
res.end("Hello from Node.js!");
});
server.listen(3000, () => console.log("Running on :3000"));
What Node.js is Great For
- REST & GraphQL APIs — fast, JSON-native.
- Real-time apps — chat, live dashboards (with WebSockets).
- Microservices — lightweight and quick to start.
- Tooling — bundlers, CLIs, build scripts.
What Node.js is NOT Ideal For
CPU-heavy work (video encoding, complex math) blocks the single thread. For that, use worker threads or a different language.
The npm Ecosystem
Node comes with npm, the world's largest package registry (2M+ packages). Install anything with npm install package-name.
FAQs
Is Node.js a programming language?
No — it's a runtime. The language is JavaScript.
Node.js vs Deno vs Bun?
All run JS server-side. Node is the mature standard; Bun is faster and newer; Deno is secure-by-default. More in our Node.js guides.
