Deno
A modern runtime for JavaScript and TypeScript.
Deno is a runtime for JavaScript and TypeScript built on V8 with a security-by-default model: scripts cannot read files, network, or environment variables without explicit permissions on the command line. TypeScript support, a formatter, a linter, a test runner, and a permission manager all ship in the core binary, removing much of the toolchain that a typical Node.js project pulls in via npm.
Ryan Dahl announced Deno in 2018, framing it as an attempt to fix a list of regrets from Node.js (which he also created in 2009). The runtime had ES modules from day one, a TypeScript- first focus, and a different module-resolution model based on URLs rather than node_modules.
Deno Land Inc. (the company behind the runtime) pivoted Deno's module system in Deno 2 (2024) to be more npm-compatible, which addressed one of the most common adoption blockers. Deno is widely used for command-line tooling, edge-function workloads (via Deno Deploy), and projects that benefit from TypeScript-without-a-build-step.
Install
curl -fsSL https://deno.land/install.sh | sh Or: Arch: sudo pacman -S deno macOS: brew install deno
Authors
- Ryan Dahl (creator, also of Node.js)
- Deno Land Inc.