Docs · 11 / 13

Browser support, size, versioning

Evergreen Chromium, Firefox and Safari 16+. The suite runs in Playwright's Chromium, Firefox and WebKit. A browser missing a primitive (sandboxed frames, MessageChannel, blob: workers, worker CSP inheritance) surfaces as SandboxUnavailable; there is no degraded mode.

Sizes, min+gz, checked in CI against budgets: core 8.5 KB (budget 10), worker runtime 2.4 KB (budget 4), frame relay 0.5 KB (budget 2).

The frame document carries a protocol version; the page checks it in the handshake and refuses a mismatch. The worker runtime is sent by the page in the spawn message, so the frame document rarely changes and a stale cached copy keeps working across library versions until the protocol itself changes. frameVersion() is a short hash to use as a cache key.

Timings on a laptop (local server): boot 2–7 ms, first run 3–5 ms, bridge overhead per call ≤ 0.1 ms, a 1 MB string in and out 3–8 ms, a 5 MB File in 3–5 ms.