API reference
The complete API reference for Deno: runtime APIs available in the Deno namespace, supported web platform APIs, and the Node.js built-in modules Deno provides for compatibility.
Deno APIs
View all symbolsNon-standard APIs in the global Deno namespace: file system, network, subprocesses, testing, FFI, and more.
BundleBundlerBundle TypeScript and JavaScript code, along with their dependencies, into a single file.CloudTools for managing state, scheduling tasks, and interacting with key-value stores.ErrorsError types and utilities for handling exceptions and custom error scenarios.FetchHTTP client for fetching data across a network.FFIForeign Function Interface.File SystemFile System APIs for working with files, directories, and file metadata.GPUGPU programming and rendering.HTTP ServerHandling HTTP requests, serving responses, and managing server behavior.I/OInterfaces for reading, writing, seeking, and managing resources.JupyterCreate interactive notebooks and execute code cells.LinterInterfaces and helpers for writing and testing custom lint rules.NetworkA wide range of networking tasks, from low-level connections to high-level server creation.PermissionsPermission system controls access to resources (e.g., file system, network, environment variables).RuntimeSystem-related functionality, process management, and observability.SubprocessSpawn and manage child processes, execute commands, and collect output.TelemetryOpenTelemetry observability integration tools.TestingRobust testing and benchmarking capabilities to ensure code quality and performance.WebSocketsEnable real-time communication between clients and servers using WebSockets.Other APIs
Web APIs
View all symbolsWeb platform standards implemented by Deno: fetch, streams, workers, crypto, and other browser-compatible APIs.
CacheTools for caching and managing data.CanvasCreate, transform, and display images and graphics within the HTML element.CryptoCryptographic functionality for secure communication, data protection, and key management.EncodingHandle character encoding, decoding, and binary data conversion.EventsHandle events and interactions.FetchHTTP client for fetching data across a network.FileFile and data manipulation tools.Geometry Interfaces Module APIGPUGPU programming and rendering.I/OInterfaces for reading, writing, seeking, and managing resources.IntlTools for internationalization and localization.MessagingFacilitate communication between different parts of an application, allowing data exchange and coordination.PerformanceMeasure, analyze, and optimize application performance.PlatformA set of essential interfaces and functions to interact with the browser environment.StorageStore data locally within the browser.StreamsManage data streams, queuing strategies, and transformations.URLManipulate URLs, extract data from URLs and manage query parameters.WasmEfficiently execute computationally intensive tasks.WebSocketsEnable real-time communication between clients and servers using WebSockets.WorkersRun script operations in background threads.Other APIs
Node APIs
View all symbolsNode.js built-in modules supported in Deno for backwards compatibility, importable via the node: scheme.
node:assertThe node:assert module provides a set of assertion functions for verifying invariants.node:async_hooksWe strongly discourage the use of the async_hooks API.node:bufferBuffer objects are used to represent a fixed-length sequence of bytes.node:child_processThe node:child_process module provides the ability to spawn subprocesses in a manner that is similar, but not identical, to popen(3) .node:clusterDeno compatibility All exports are non-functional stubs.node:consoleThe node:console module provides a simple debugging console that is similar to the JavaScript console mechanism provided by web browsers.node:constantsnode:cryptoThe node:crypto module provides cryptographic functionality that includes a set of wrappers for OpenSSL's hash, HMAC, cipher, decipher, s...node:dgramThe node:dgram module provides an implementation of UDP datagram sockets.node:diagnostics_channelThe node:diagnostics_channel module provides an API to create named channels to report arbitrary message data for diagnostics purposes.node:dnsThe node:dns module enables name resolution.node:dns/promisesThe dns.promises API provides an alternative set of asynchronous DNS methods that return Promise objects rather than using callbacks.node:domainDeno compatibility All exports are non-functional stubs.node:eventsMuch of the Node.js core API is built around an idiomatic asynchronous event-driven architecture in which certain kinds of objects (calle...node:fsThe node:fs module enables interacting with the file system in a way modeled on standard POSIX functions.node:fs/promisesThe fs/promises API provides asynchronous file system methods that return promises.node:httpTo use the HTTP server and client one must import the node:http module.node:http2The node:http2 module provides an implementation of the HTTP/2 protocol.node:httpsHTTPS is the HTTP protocol over TLS/SSL.node:inspectorDeno compatibility console is supported.node:inspector/promisesThe node:inspector/promises module provides an API for interacting with the V8 inspector.node:modulenode:netStability: 2 - Stable The node:net module provides an asynchronous network API for creating stream-based TCP or IPC servers ( createServe...node:osThe node:os module provides operating system-related utility methods and properties.node:pathThe node:path module provides utilities for working with file and directory paths.node:perf_hooksThis module provides an implementation of a subset of the W3C Web Performance APIs as well as additional APIs for Node.js-specific perfor...node:processnode:punycode**The version of the punycode module bundled in Node.js is being deprecated.node:querystringThe node:querystring module provides utilities for parsing and formatting URL query strings.node:readlineThe node:readline module provides an interface for reading data from a Readable stream (such as process.stdin ) one line at a time.node:readline/promisesnode:replDeno compatibility All symbols are not supported.node:seaDeno compatibility All symbols are not supported.node:sqliteDeno compatibility This module has been added in Deno v2.2.node:streamA stream is an abstract interface for working with streaming data in Node.js.node:stream/consumersThe utility consumer functions provide common options for consuming streams.node:stream/promisesnode:stream/webnode:string_decoderThe node:string_decoder module provides an API for decoding Buffer objects into strings in a manner that preserves encoded multi-byte UTF...node:testThe node:test module facilitates the creation of JavaScript tests.node:test/reportersThe node:test/reporters module exposes the builtin-reporters for node:test .node:timersThe timer module exposes a global API for scheduling functions to be called at some future period of time.node:timers/promisesThe timers/promises API provides an alternative set of timer functions that return Promise objects.node:tlsThe node:tls module provides an implementation of the Transport Layer Security (TLS) and Secure Socket Layer (SSL) protocols that is buil...node:trace_eventsDeno compatibility All exports are non-functional stubs.node:ttyThe node:tty module provides the tty.ReadStream and tty.WriteStream classes.node:urlThe node:url module provides utilities for URL resolution and parsing.node:utilThe node:util module supports the needs of Node.js internal APIs.node:util/typesnode:v8Deno compatibility cachedDataVersionTag and getHeapStatistics , serialize and deserialize are supported.node:vmThe node:vm module enables compiling and running code within V8 Virtual Machine contexts.node:wasiDeno compatibility All exports are non-functional stubs.node:worker_threadsThe node:worker_threads module enables the use of threads that execute JavaScript in parallel.node:zlibThe node:zlib module provides compression functionality implemented using Gzip, Deflate/Inflate, and Brotli.