N

Node.js

The JavaScript runtime that conquered the server — created by Ryan Dahl in 2009, built on Chrome's V8 engine. Event-driven, non-blocking I/O that brought JavaScript from the browser to everywhere.

v22 LTS Chrome V8 Event-Driven npm Ecosystem
15+
Years Old
2.5M+
npm Packages
98%
of Fortune 500
30M+
Developers
JavaScript Beyond the Browser

Node.js is a JavaScript runtime built on Chrome's V8 engine. Created by Ryan Dahl in 2009, it took JavaScript — a language designed for browser scripting — and turned it into a general-purpose server-side platform. The idea was radical: use the same language on the frontend and backend.

At its core, Node.js uses an event-driven, non-blocking I/O model. Instead of spawning a new thread for every connection (like Apache), Node handles thousands of concurrent connections on a single thread using an event loop. This makes it lightweight, efficient, and ideal for data-intensive real-time applications.

The npm (Node Package Manager) registry is the world's largest software registry, with over 2.5 million packages. From web frameworks to CLI tools, from database drivers to machine learning libraries, npm has a package for virtually everything. Node.js didn't just bring JavaScript to the server — it created an entire ecosystem.

Your First HTTP Server
// server.js — a web server in 6 lines
const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello, World!\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});

Save as server.js and run with node server.js. No compilation, no configuration, no web server to install. Node.js is the server. This simplicity is what made it explode in popularity — from zero to powering Netflix, PayPal, and LinkedIn in under five years.

What Makes Node.js Tick
Event Loop
Single-threaded event loop handles thousands of concurrent connections without creating new threads. Non-blocking by design.
📦
npm Ecosystem
2.5M+ packages in the world's largest software registry. One command to install any library: npm install.
V8
V8 Engine
Google's high-performance JavaScript engine compiles JS to native machine code via JIT compilation. Blazing fast execution.
💧
Streams
Process data in chunks without loading everything into memory. Pipe readable streams to writable streams for efficient I/O.
Cluster Module
Fork multiple Node processes to utilize all CPU cores. Built-in load balancing across child processes via cluster.
🧵
Worker Threads
True multi-threading for CPU-intensive tasks. Share memory between threads via SharedArrayBuffer.
ES
ES Modules
Native support for import/export syntax alongside CommonJS require(). Modern JavaScript module system built in.
libuv
Cross-platform async I/O library powering the event loop. Handles file system, DNS, network, child processes, and timers.
>_
REPL
Interactive Read-Eval-Print Loop for quick prototyping. Type node and start experimenting with JavaScript immediately.
The Great Unification

Before Node.js, web development was split: JavaScript on the frontend, something else (PHP, Ruby, Java, Python) on the backend. Developers needed to context-switch between languages, ecosystems, and mental models. Node.js erased that boundary. One language, one ecosystem, full stack.

The results were transformative. Netflix reduced startup time by 70% after migrating to Node. PayPal built their checkout page twice as fast with 33% fewer lines of code. LinkedIn moved from Ruby to Node and went from 30 servers to 3. Uber handles millions of rides per day on Node's event-driven architecture. NASA uses Node for its EVA (spacewalk) data systems.

Dive Deeper