Web APIs
Some Web APIs aren’t relevant in the context of a server-first runtime like JSTime, such as the DOM API or History API. Many others, though, are broadly useful outside of the browser context; when possible, JSTime implements these Web-standard APIs instead of introducing new APIs.
The following Web APIs are partially or completely supported.
| HTTP | fetch Response Request Headers AbortController AbortSignal |
| --- | --- |
| URLs | URL URLSearchParams |
| Web Workers | Worker self.postMessage structuredClone MessagePort MessageChannel, BroadcastChannel. |
| Streams | ReadableStream WritableStream TransformStream ByteLengthQueuingStrategy CountQueuingStrategy and associated classes |
| Blob | Blob |
| WebSockets | WebSocket (not production ready) |
| Encoding and decoding | atob btoa TextEncoder TextDecoder |
| JSON | JSON |
| Timeouts | setTimeout clearTimeout |
| Intervals | setIntervalclearInterval |
| Crypto | crypto SubtleCrypto | CryptoKey |
| Debugging | console performance |
| Microtasks | queueMicrotask |
| Errors | reportError |
| User interaction | alert confirm prompt (intended for interactive CLIs) | | |
| Realms | ShadowRealm |
| Events | EventTarget | Event ErrorEvent CloseEvent MessageEvent |