Compatibility
Fairyfly targets web-standard APIs (fetch, URL, WebSocket, Headers)
with a deliberately small Node-shaped subset (process, fs, console).
This page is the gap list.
What is present
Every global in Object.getOwnPropertyNames(globalThis):
Web standard: fetch · Request · Response · Headers · URL ·
URLSearchParams · Blob · FormData · TextEncoder · TextDecoder ·
WebSocket · crypto (randomUUID, getRandomValues, subtle.digest)
· btoa · atob · performance · queueMicrotask · DOMException
Fairyfly: http · fs · process · child_process · Database ·
sql · SQL · Worker · ffi · console
Engine (QuickJS-ng): Promise · Map/Set/WeakMap/WeakSet ·
Proxy · Reflect · Symbol · Iterator · Atomics ·
SharedArrayBuffer · FinalizationRegistry · WeakRef ·
AggregateError · DisposableStack/AsyncDisposableStack ·
Float16Array · BigInt · escape/unescape · eval
Missing vs Node
Missing vs browsers
Behavioural deviations
These are the ones that bite during a port:
Porting checklist
See also
- API overview — every global, linked
- Limitations — every hard cap
- Modules — ESM resolution rules
- Errors and exit codes
