1cd35a6746
Co-authored-by: Asher Gomez <ashersaupingomez@gmail.com> |
||
---|---|---|
_tools | ||
.devcontainer | ||
.github | ||
archive | ||
assert | ||
async | ||
bytes | ||
cli | ||
collections | ||
crypto | ||
csv | ||
data_structures | ||
datetime | ||
dotenv | ||
encoding | ||
expect | ||
fmt | ||
front_matter | ||
fs | ||
html | ||
http | ||
ini | ||
internal | ||
io | ||
json | ||
jsonc | ||
log | ||
media_types | ||
msgpack | ||
net | ||
path | ||
regexp | ||
semver | ||
streams | ||
testing | ||
text | ||
toml | ||
ulid | ||
url | ||
uuid | ||
webgpu | ||
yaml | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
badge.svg | ||
browser-compat.tsconfig.json | ||
deno.json | ||
LICENSE | ||
README.md | ||
Releases.md |
Deno Standard Library
High-quality APIs for Deno and the web. Use fearlessly.
Note
Newer versions of the Standard Library are now hosted on JSR. Older versions up till 0.224.0 are still available at deno.land/std.
Packages
The following list contains links to the Standard Library's packages and documentation:
Package | Status | Latest version |
---|---|---|
archive | Unstable | |
assert | Settled | |
async | Settled | |
bytes | Settled | |
cli | Unstable | |
collections | Settled | |
crypto | Settled | |
csv | Settled | |
data_structures | Unstable | |
datetime | Unstable | |
dotenv | Unstable | |
encoding | Settled | |
expect | Unstable | |
fmt | Settled | |
front_matter | Settled | |
fs | Settled | |
html | Unstable | |
http | Unstable | |
ini | Unstable | |
io | Unstable | |
json | Settled | |
jsonc | Settled | |
log | Unstable | |
media_types | Settled | |
msgpack | Unstable | |
net | Unstable | |
path | Settled | |
regexp | Unstable | |
semver | Unstable | |
streams | Settled | |
testing | Settled | |
text | Unstable | |
toml | Settled | |
ulid | Unstable | |
url | Unstable | |
uuid | Settled | |
webgpu | Unstable | |
yaml | Settled |
Note: Settled status means a package is unlikely to have breaking changes, but has not yet achieved v1 status.
Stabilization
For a package to reach v1 (aka stable) status, it must meet the following requirements:
- Approved by four members of the internal team. There must be consensus that the API design is satisfactory and unlikely to change in the future.
- 100% documented, passing
deno doc --lint
checks and adhering to the documentation guidelines. - Maximum possible test coverage
- No open issues or pull requests that might lead to breaking changes. For example, issues that suggest new non-breaking features are fine to exist at stabilization.
Architecture
Check out the architecture guide here.
Design
Minimal Exports
Files are structured to minimize the number of dependencies they incur and the amount of effort required to manage them, both for the maintainer and the user. In most cases, only a single function or class, alongside its related types, are exported. In other cases, functions that incur negligible dependency overhead will be grouped together in the same file.
Deprecation Policy
We deprecate the APIs in the Standard Library when they get covered by new JavaScript language APIs or new Web Standard APIs. These APIs are usually removed after 3 minor versions.
If you still need to use such APIs after the removal for some reason (for example, the usage in Fresh island), please use the URL pinned to the version where they are still available.
For example, if you want to keep using readableStreamFromIterable
, which was
deprecated and removed in favor of ReadableStream.from
in v0.195.0
, please
use the import URL pinned to v0.194.0
:
import { readableStreamFromIterable } from "https://deno.land/std@0.194.0/streams/readable_stream_from_iterable.ts";
Contributing
Check out the contributing guidelines here.
Releases
The Standard Library is versioned independently of the Deno CLI. This will change once the Standard Library is stabilized. See here for the compatibility of different versions of the Deno Standard Library and the Deno CLI.
A new minor version of the Standard Library is published at the same time as every new version of the Deno CLI (including patch versions).
Badge
<a href="https://jsr.io/@std">
<img
width="135"
height="20"
src="https://raw.githubusercontent.com/denoland/deno_std/main/badge.svg"
alt="Built with the Deno Standard Library"
/>
</a>
[![Built with the Deno Standard Library](https://raw.githubusercontent.com/denoland/deno_std/main/badge.svg)](https://jsr.io/@std)