A fast all-in-one JavaScript and TypeScript toolkit: runtime, bundler, test runner, and package manager in a single executable.
denoland/deno
A JavaScript, TypeScript, and WebAssembly runtime with secure defaults, built on V8, Rust, and Tokio.
Open-source alternative to:Node.js
- Stars
- 108,722
- Forks
- 6,461
- Open issues
- 1,720
- Last commit
- 7 hours ago
What is it?
Deno is a runtime for running JavaScript, TypeScript, and WebAssembly programs outside the browser. It is built on V8 for execution, Rust for the native layer, and Tokio for asynchronous I/O. Programs run with secure defaults: network, file, and environment access must be granted explicitly through flags such as --allow-net.
TypeScript runs directly without a separate compile step, and the runtime ships with a built-in toolchain. The project also provides the official Deno Standard Library and JSR, a package registry for modern JavaScript and TypeScript. Deno is most often used to build web servers, and the command deno run --allow-net server.ts starts an HTTP server with a few lines of code.
Installation is available through shell scripts, Homebrew, Chocolatey, WinGet, and Scoop, and the project can also be built from source.
Key features
- 01Runs JavaScript, TypeScript, and WebAssembly without a separate build step.
- 02Denies file, network, and environment access by default unless explicitly allowed.
- 03Built on V8, Rust, and Tokio.
- 04Includes a built-in web server API via Deno.serve.
- 05Ships with the official standard library and integrates with the JSR package registry.
Use cases
- Building HTTP servers and web APIs with minimal setup.
- Running TypeScript scripts and tools without a Node.js toolchain.
- Deploying sandboxed programs that need restricted system access.
- Using JSR and the standard library in new JavaScript or TypeScript projects.
Quick start
- 1
Install Deno with Homebrew (Mac)
brew install deno - 2
Install Deno with Chocolatey (Windows)
choco install deno - 3
Create server.ts with the Deno.serve hello world program from the README
- 4
Run the server with network permission
deno run --allow-net server.ts
Things to know
- The README's shell and PowerShell installers pipe remote scripts into a shell, so a package-manager install is safer.
Topics
FAQ
- What is deno?
- A JavaScript, TypeScript, and WebAssembly runtime with secure defaults, built on V8, Rust, and Tokio. Deno is a runtime for running JavaScript, TypeScript, and WebAssembly programs outside the browser. It is built on V8 for execution, Rust for the native layer, and Tokio for asynchronous I/O. Programs run with secure defaults: network, file, and environment access must be granted explicitly through flags such as --allow-net.
- Is deno free to use? What license does it have?
- deno is open source under the MIT license. Check the license terms before using it in commercial products.
- Is deno still maintained?
- Actively maintained. The last commit to deno was on Oct 20, 2026.
- What can I use deno for?
- Building HTTP servers and web APIs with minimal setup. Running TypeScript scripts and tools without a Node.js toolchain. Deploying sandboxed programs that need restricted system access. Using JSR and the standard library in new JavaScript or TypeScript projects.
- How do I install deno?
- Install Deno with Homebrew (Mac): brew install deno Install Deno with Chocolatey (Windows): choco install deno Create server.ts with the Deno.serve hello world program from the README Run the server with network permission: deno run --allow-net server.ts
- Where can I get deno?
- The source code and installation instructions are on GitHub: https://github.com/denoland/deno
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A safe, private runtime for autonomous AI agents that enforces file, system call, and network policies per sandbox.
A experimental TypeScript and JavaScript compiler that turns programs into native executables or WebAssembly, without requiring Node.js at runtime.
A Rust port of the TypeScript 7 compiler and language server, offered as a drop-in replacement for type checking and emit.
A zero-configuration build tool for the web that bundles HTML, CSS, JavaScript and assets without a config file.
Open source React and Svelte libraries for building interactive node-based UIs such as flowcharts, graphs and workflow editors.