On this page
Node API Compatibility List
Deno provides polyfills for a number of built-in Node.js modules and globals. For a full list of Node built-in modules, see the reference.
Node compatibility is an ongoing project - help us identify gaps and let us know which modules you need by opening an issue on GitHub.
Built-in module support Jump to heading
node:async_hooks
ℹ️
AsyncLocalStorage
is supported. AsyncResource
,
executionAsyncId
, and createHook
are
non-functional stubs.
node:crypto
✅
Missing Certificate
class,
crypto.Cipheriv.prototype.setAutoPadding
,
crypto.Decipheriv.prototype.setAutoPadding
,
crypto.publicDecrypt
,
crypto.ECDH.prototype.convertKey
, x448
option for
generateKeyPair
, crypto.KeyObject
,
safe
, add
and rem
options for
generatePrime
, crypto.Sign.prototype.sign
and
crypto.Verify.prototype.verify
with non BinaryLike
input, crypto.secureHeapUsed
, crypto.setEngine
,
legacy methods of crypto.X509Certificate
.
node:dgram
ℹ️
Some dgram.Socket
instance methods are non-functional stubs:
addMembership
addSourceSpecificMembership
dropMembership
dropSourceSpecificMembership
setBroadcast
setMulticastInterface
setMulticastLoopback
setMulticastTtl
setTtl
node:domain
❌
All exports are non-functional stubs. This is a deprecated Node module.
node:fs
✅
node:fs
Missing utf16le
, latin1
and ucs2
encoding for fs.writeFile
and fs.writeFileSync
.
node:fs/promises
Missing lchmod
.
node:inspector
ℹ️
console
is supported. Other APIs are stubs and will throw an
error. Due to security implications the Deno team does not plan to polyfill
these APIs.
node:perf_hooks
ℹ️
Missing perf_hooks.eventLoopUtilization
,
perf_hooks.timerify
,
perf_hooks.monitorEventLoopDelay
.
node:repl
ℹ️
builtinModules
and _builtinLibs
are supported.
Missing REPLServer.prototype.constructor
and
start()
.
node:util
ℹ️
Missing aborted
, transferableAbortSignal
, transferableAbortController
, MIMEParams
, MIMEType
and getSystemErrorMap
.
node:v8
ℹ️
cachedDataVersionTag
and getHeapStatistics
are
supported. setFlagsFromStrings
is a noop. Other APIs are not
supported and will throw and error.
node:worker_threads
ℹ️
Missing parentPort.emit
,
parentPort.removeAllListeners
,
markAsUntransferable
, moveMessagePortToContext
,
receiveMessageOnPort
,
Worker.prototype.getHeapSnapshot
.
Globals Jump to heading
This is the list of Node globals that Deno supports. These globals are only
available in the npm
package scope. In your own code you can use them by
importing them from the relevant node:
module.