Deno

Linux & Mac Windows

A new way to JavaScript

github.com/denoland/deno

github.com/denoland/deno_std

github.com/denoland/deno_install

github.com/denoland/registry

Documentation

API Reference

Links to other Deno resources.

Getting started

Install Deno into ~/.deno/bin

With Shell

curl -L https://deno.land/x/install/install.sh | sh
export PATH=$HOME/.deno/bin:$PATH

With PowerShell

iex (iwr https://deno.land/x/install/install.ps1)
Try a Deno program. Install by bash alias. This one serves a local directory in HTTP.
alias file_server="deno \
  https://deno.land/x/http/file_server.ts --allow-net"
Run it:
% file_server .
Downloading https://deno.land/x/http/file_server.ts...
[...]
HTTP server listening on http://0.0.0.0:4500/
And if you ever want to upgrade to the latest published version:
file_server --reload

Benchmarks

Execution time

This shows how much time total it takes to run a few simple deno programs: tests/002_hello.ts and tests/003_relative_import.ts. For deno to execute typescript, it must first compile it to JS. A warm startup is when deno has a cached JS output already, so it should be fast because it bypasses the TS compiler. A cold startup is when deno must compile from scratch.

Throughput

Time it takes to pipe a certain amount of data through Deno. echo_server.ts and cat.ts Smaller is better.

Req/Sec

Tests HTTP server performance. 10 keep-alive connections do as many hello-world requests as possible. Bigger is better.

Executable size

deno ships only a single binary. We track its size here.

Thread count

How many threads various programs use.

Syscall count

How many total syscalls are performed when executing a given script.

References

All benchmark data