Node.js is a cross-platform, open-source JavaScript runtime built on the V8 engine that executes JavaScript outside the browser, enabling server-side and command-line applications. It provides a single-threaded, event-driven, non-blocking I/O model that scales to many concurrent connections, together with a module system and the npm package ecosystem. Node.js is a foundational runtime for web back-ends, build tooling and blockchain development environments.
Overview
- Node.js couples the V8 engine with an asynchronous event loop, allowing a single thread to multiplex thousands of network connections.
- Its CommonJS and ES module systems plus the npm registry give access to a vast library ecosystem.
- These properties make it a default choice for back-end services, API gateways and developer tooling.
Key aspects
- Single-threaded, event-driven, non-blocking I/O model.
- V8-based just-in-time compilation of JavaScript.
- npm package ecosystem and module resolution.
- Streams, buffers and asynchronous primitives for I/O.
Applications
- RESTful and GraphQL API back-ends and microservices.
- Build tooling, bundlers and command-line utilities.
- Blockchain development frameworks and JSON-RPC clients.
Operational notes
- Scales horizontally well for I/O-bound workloads.
- CPU-bound tasks benefit from worker threads or offloading.
- Long-term-support releases provide production stability.