Algunas APIs Web no son relevantes en el contexto de un runtime orientado al servidor como Bun, como la API del DOM o la API de Historial. Muchas otras, sin embargo, son ampliamente útiles fuera del contexto del navegador; cuando es posible, Bun implementa estas APIs web estándar en lugar de introducir nuevas APIs.
Las siguientes APIs Web están parcial o completamente soportadas.
| Categoría | APIs |
|---|---|
| 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 y clases asociadas |
| Blob | Blob |
| WebSockets | WebSocket |
| Codificación y decodificación | atob, btoa, TextEncoder, TextDecoder |
| JSON | JSON |
| Tiempos de espera | setTimeout, clearTimeout |
| Intervalos | setInterval, clearInterval |
| Criptografía | crypto, SubtleCrypto, CryptoKey |
| Depuración | console, performance |
| Microtareas | queueMicrotask |
| Errores | reportError |
| Interacción de usuario | alert, confirm, prompt (destinado a CLIs interactivas) |
| Reinos | ShadowRealm |
| Eventos | EventTarget, Event, ErrorEvent, CloseEvent, MessageEvent |