2019-10-03 12:26:48 -04:00
|
|
|
|
# Deno
|
2018-05-18 12:25:59 -04:00
|
|
|
|
|
2023-04-16 19:08:05 -04:00
|
|
|
|
[![](https://img.shields.io/crates/v/deno.svg)](https://crates.io/crates/deno)
|
|
|
|
|
[![Twitter badge][]][Twitter link] [![Discord badge][]][Discord link]
|
2023-07-25 01:44:50 -04:00
|
|
|
|
[![YouTube badge][]][YouTube link]
|
2019-03-05 00:01:32 -05:00
|
|
|
|
|
2021-08-25 09:27:18 -04:00
|
|
|
|
<img align="right" src="https://deno.land/logo.svg" height="150px" alt="the deno mascot dinosaur standing in the rain">
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
[Deno](https://www.deno.com)
|
|
|
|
|
([/ˈdiːnoʊ/](http://ipa-reader.xyz/?text=%CB%88di%CB%90no%CA%8A), pronounced
|
|
|
|
|
`dee-no`) is a JavaScript, TypeScript, and WebAssembly runtime with secure
|
|
|
|
|
defaults and a great developer experience. It's built on [V8](https://v8.dev/),
|
|
|
|
|
[Rust](https://www.rust-lang.org/), and [Tokio](https://tokio.rs/).
|
|
|
|
|
|
|
|
|
|
Learn more about the Deno runtime
|
|
|
|
|
[in the documentation](https://docs.deno.com/runtime/manual).
|
|
|
|
|
|
|
|
|
|
## Installation
|
|
|
|
|
|
|
|
|
|
Install the Deno runtime on your system using one of the commands below. Note
|
|
|
|
|
that there are a number of ways to install Deno - a comprehensive list of
|
|
|
|
|
installation options can be found
|
|
|
|
|
[here](https://docs.deno.com/runtime/manual/getting_started/installation).
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
Shell (Mac, Linux):
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```sh
|
2022-03-07 19:53:15 -05:00
|
|
|
|
curl -fsSL https://deno.land/install.sh | sh
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
PowerShell (Windows):
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```powershell
|
2022-08-15 10:05:29 -04:00
|
|
|
|
irm https://deno.land/install.ps1 | iex
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
[Homebrew](https://formulae.brew.sh/formula/deno) (Mac):
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```sh
|
|
|
|
|
brew install deno
|
|
|
|
|
```
|
2019-02-19 23:25:52 -05:00
|
|
|
|
|
2020-09-29 11:40:17 -04:00
|
|
|
|
[Chocolatey](https://chocolatey.org/packages/deno) (Windows):
|
|
|
|
|
|
|
|
|
|
```powershell
|
|
|
|
|
choco install deno
|
|
|
|
|
```
|
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
### Build and install from source
|
2021-03-15 07:46:08 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
Complete instructions for building Deno from source can be found in the manual
|
|
|
|
|
[here](https://docs.deno.com/runtime/manual/references/contributing/building_from_source).
|
2021-03-15 07:46:08 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
## Your first Deno program
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
Deno can be used for many different applications, but is most commonly used to
|
|
|
|
|
build web servers. Create a file called `server.ts` and include the following
|
|
|
|
|
TypeScript code:
|
2023-08-22 01:56:00 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
```ts
|
|
|
|
|
Deno.serve((_req: Request) => {
|
|
|
|
|
return new Response("Hello, world!");
|
|
|
|
|
});
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```
|
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
Run your server with the following command:
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
|
|
|
|
```sh
|
2023-11-27 14:18:14 -05:00
|
|
|
|
deno run --allow-net server.ts
|
2020-09-29 11:40:17 -04:00
|
|
|
|
```
|
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
This should start a local web server on
|
|
|
|
|
[http://localhost:8000](http://localhost:8000).
|
2023-04-16 19:08:05 -04:00
|
|
|
|
|
2023-11-27 16:43:35 -05:00
|
|
|
|
Learn more about writing and running Deno programs
|
2023-11-27 14:18:14 -05:00
|
|
|
|
[in the docs](https://docs.deno.com/runtime/manual).
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
## Additional resources
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
- **[Deno Docs](https://docs.deno.com)**: official guides and reference docs for
|
|
|
|
|
the Deno runtime, [Deno Deploy](https://deno.com/deploy), and beyond.
|
2024-04-10 17:26:35 -04:00
|
|
|
|
- **[Deno Standard Library](https://jsr.io/@std)**: officially supported common
|
|
|
|
|
utilities for Deno programs.
|
2023-11-27 14:18:14 -05:00
|
|
|
|
- **[deno.land/x](https://deno.land/x)**: registry for third-party Deno modules.
|
|
|
|
|
- **[Developer Blog](https://deno.com/blog)**: Product updates, tutorials, and
|
|
|
|
|
more from the Deno team.
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
## Contributing
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
2023-11-27 14:18:14 -05:00
|
|
|
|
We appreciate your help! To contribute, please read our
|
|
|
|
|
[contributing instructions](https://docs.deno.com/runtime/manual/references/contributing/).
|
2020-09-29 11:40:17 -04:00
|
|
|
|
|
2023-07-25 01:44:50 -04:00
|
|
|
|
[Build status - Cirrus]: https://github.com/denoland/deno/workflows/ci/badge.svg?branch=main&event=push
|
2020-09-29 11:40:17 -04:00
|
|
|
|
[Build status]: https://github.com/denoland/deno/actions
|
2023-04-16 19:08:05 -04:00
|
|
|
|
[Twitter badge]: https://img.shields.io/twitter/follow/deno_land.svg?style=social&label=Follow
|
|
|
|
|
[Twitter link]: https://twitter.com/intent/follow?screen_name=deno_land
|
|
|
|
|
[YouTube badge]: https://img.shields.io/youtube/channel/subscribers/UCqC2G2M-rg4fzg1esKFLFIw?style=social
|
|
|
|
|
[YouTube link]: https://www.youtube.com/@deno_land
|
|
|
|
|
[Discord badge]: https://img.shields.io/discord/684898665143206084?logo=discord&style=social
|
|
|
|
|
[Discord link]: https://discord.gg/deno
|