mirror of
https://github.com/denoland/deno.git
synced 2024-12-23 15:49:44 -05:00
A modern runtime for JavaScript and TypeScript.
https://deno.com/
4c779b5e8c
This ports the REPL over to Rust and makes use of an inspector session to run a REPL on top of any isolate which lets make full use of rustylines various things like validators and completors without having to introduce a bunch of hard to test internal ops and glue code. An accidental but good side effect of this is that the multiple line input we previously had is now an editable multi-line input prompt that is correctly stored in the history as a single entry. |
||
---|---|---|
.cargo | ||
.github | ||
cli | ||
core | ||
docs | ||
op_crates | ||
std | ||
test_plugin | ||
test_util | ||
third_party@e80050929a | ||
tools | ||
.dprintrc.json | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.json | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.rustfmt.toml | ||
Cargo.lock | ||
Cargo.toml | ||
CODE_OF_CONDUCT.md | ||
LICENSE | ||
README.md | ||
Releases.md |
Deno
Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.
Features
- Secure by default. No file, network, or environment access, unless explicitly enabled.
- Supports TypeScript out of the box.
- Ships only a single executable file.
- Built-in utilities like a dependency inspector (deno info) and a code formatter (deno fmt).
- Set of reviewed standard modules that are guaranteed to work with Deno
Install
Shell (Mac, Linux):
curl -fsSL https://deno.land/x/install/install.sh | sh
PowerShell (Windows):
iwr https://deno.land/x/install/install.ps1 -useb | iex
Homebrew (Mac):
brew install deno
Chocolatey (Windows):
choco install deno
Build and install from source using Cargo:
cargo install deno
See deno_install and releases for other options.
Getting Started
Try running a simple program:
deno run https://deno.land/std/examples/welcome.ts
Or a more complex one:
import { serve } from "https://deno.land/std@0.69.0/http/server.ts";
const s = serve({ port: 8000 });
console.log("http://localhost:8000/");
for await (const req of s) {
req.respond({ body: "Hello World\n" });
}
You can find a more in depth introduction, examples, and environment setup guides in the manual.
More in-depth info can be found in the runtime documentation
Contributing
We appreciate your help!
To contribute, please read the our guidelines