Skip to content

Node.js Modules

42 Node.js API modules (plus @gjsify/node-polyfills meta) implemented for GJS using native GNOME libraries.

PackageGNOME LibsStatusNotes
assertFullAssertionError, deepEqual, throws, strict
async_hooksFullAsyncLocalStorage, AsyncResource, createHook
bufferFullBuffer via Blob/File/atob/btoa
child_processGioFullexec/execSync, spawn/spawnSync via Gio.Subprocess
clusterStubisPrimary, isWorker
consoleFullConsole with stream support
constantsFullFlattened os.constants + fs.constants (deprecated Node alias)
cryptoGLibFullHash / Hmac / PBKDF2 / HKDF / scrypt / AES / DH / ECDH / Sign / Verify / KeyObject / X509
dgramGioFullUDP via Gio.Socket
diagnostics_channelFullChannel, TracingChannel
dnsGioFulllookup, resolve4/6, reverse via Gio.Resolver + promises
domainStubDeprecated
eventsFullEventEmitter (prototype methods enumerable for socket.io v4)
fsGioFullsync/callback/promises/streams/FSWatcher; URL path args everywhere
globalsGLibFullprocess, Buffer, structuredClone, TextEncoder/Decoder, URL, queueMicrotask
httpSoup 3.0PartialServer (Soup.Server), IncomingMessage, ServerResponse, Agent
http2Stubconstants only
httpsPartialAgent, stub request/get
inspectorStubSession stub
moduleGio, GLibFullbuiltinModules, isBuiltin, createRequire
netGioFullSocket (Gio.SocketClient), Server (Gio.SocketService)
osGLibFullhomedir, hostname, cpus
pathFullPOSIX + Win32
perf_hooksFullperformance (Web API / GLib fallback)
processGLibFullextends EventEmitter, env, cwd, platform, nextTick
querystringFullparse/stringify
readlineFullInterface, createInterface, question, prompt
sqliteGda 6.0PartialDatabaseSync / StatementSync on libgda SQLite provider
streamFullReadable, Writable, Duplex, Transform, PassThrough
string_decoderFullUTF-8, Base64, hex, streaming
sysFullDeprecated alias for util
timersFullsetTimeout/setInterval/setImmediate + promises (GLib-safe)
tlsGioPartialTLSSocket via Gio.TlsClientConnection
ttyFullReadStream/WriteStream, ANSI escapes
urlGLibFullURL (static createObjectURL/revokeObjectURL), URLSearchParams via GLib.Uri
utilFullinspect, format, promisify, types
v8StubgetHeapStatistics, serialize/deserialize (JSON)
vmPartialrunInThisContext, runInNewContext, Script, compileFunction
worker_threadsGio, GLibPartialMessageChannel/Port/BroadcastChannel, subprocess Worker — no SharedArrayBuffer
ws (npm)Soup 3.0Partialws-compat WebSocket client + WebSocketServer over @gjsify/websocket
zlibFullgzip/deflate via Web Compression API, Gio fallback
PackagePurpose
@gjsify/node-polyfillsUmbrella dep — pulls every Node polyfill so scaffolds resolve any node:* import out of the box