1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 15:24:46 -05:00
A modern runtime for JavaScript and TypeScript. https://deno.com/
Find a file
Bartek Iwańczuk 65e72b68ac
refactor(cli): decouple ops from ProgramState and Flags (#8659)
This commit does major refactor of "Worker" and "WebWorker",
in order to decouple them from "ProgramState" and "Flags".
The main points of interest are "create_main_worker()" and
"create_web_worker_callback()" functions which are responsible
for creating "Worker" and "WebWorker" in CLI context.
As a result it is now possible to factor out common "runtime"
functionality into a separate crate.
2020-12-11 18:49:26 +01:00
.cargo Statically link the C runtime library on Windows (#4469) 2020-03-23 20:31:29 +01:00
.github build: remove cargo publish --dry-run (#8694) 2020-12-09 21:17:51 +01:00
cli refactor(cli): decouple ops from ProgramState and Flags (#8659) 2020-12-11 18:49:26 +01:00
core refactor(cli): decouple ops from ProgramState and Flags (#8659) 2020-12-11 18:49:26 +01:00
docs docs(tools): add documentation for the deno lsp command (#8676) 2020-12-10 22:34:54 +01:00
op_crates chore: fixed various misspellings and other typos (#8691) 2020-12-11 06:45:45 +11:00
std chore: fixed various misspellings and other typos (#8691) 2020-12-11 06:45:45 +11:00
test_plugin core: implement 'AsyncRefCell' and 'ResourceTable2' (#8273) 2020-11-25 01:15:14 +01:00
test_util fix(op_crates/fetch): support non-ascii response headers value (#8600) 2020-12-09 16:48:06 +01:00
third_party@586fb6a2c7 build: upgrade dprint to 0.10.0 (#8494) 2020-11-25 18:37:52 +01:00
tools build: update dlint to v0.2.10 (#8284) 2020-11-14 20:27:37 +01:00
.dprintrc.json build: upgrade dprint to 0.10.0 (#8494) 2020-11-25 18:37:52 +01:00
.editorconfig editorconfig: Don't insert final newline in .out files (#1686) 2019-02-07 11:31:49 -05:00
.gitattributes remove unused git attributes (#7011) 2020-08-10 23:22:45 -04:00
.gitignore chore: remove dead code (#8296) 2020-11-08 19:07:33 +01:00
.gitmodules build: use shallow clone of third_party (#8295) 2020-11-09 15:43:04 +01:00
.rustfmt.toml change copyrights from 2019 to 2020 (#3733) 2020-01-21 10:01:55 -05:00
Cargo.lock chore: update swc_ecmascript to 0.15.0 (#8688) 2020-12-09 23:09:10 +01:00
Cargo.toml refactor: deno_crypto op crate (#7956) 2020-11-13 22:01:57 +01:00
CODE_OF_CONDUCT.md fix(tools): prettier formatting (#6206) 2020-06-09 17:50:41 +02:00
LICENSE change copyrights from 2019 to 2020 (#3733) 2020-01-21 10:01:55 -05:00
README.md docs: Fix readme typo (#8721) 2020-12-11 18:43:01 +01:00
Releases.md chore: fixed various misspellings and other typos (#8691) 2020-12-11 06:45:45 +11:00

Deno

Build Status - Cirrus Twitter handle

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/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 our guidelines.