From 6ab7b8a8db2fc84c52a9f3c28fcdf7d810d57d63 Mon Sep 17 00:00:00 2001 From: Lucas Carlson Date: Sun, 23 Aug 2026 01:50:51 -0700 Subject: [PATCH] docs: state the browser engine boundaries The support matrix named only Chromium, so an agent evaluating the browser runtime for a Cordova app had no answer for WKWebView. The runtime support section now separates the three questions: which API gates persistence (OPFS sync access handles, with the Safari 16.4 and Firefox 111 arrival points), which APIs the multi-tab hosts need (Web Locks and BroadcastChannel, universally available), and why an embedded WebView must be probed even when the platform browser qualifies. Fail-fast persistent open and everywhere-working temporary storage give the probe a safe shape. --- docs/support.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/support.md b/docs/support.md index 9562f10..800cff0 100644 --- a/docs/support.md +++ b/docs/support.md @@ -18,6 +18,21 @@ The package is ESM-only. PostgreSQL, MySQL, Redis, and SQLite WASM require their optional peer dependency. The Node SQLite adapter has no driver dependency beyond Node.js. +The browser runtime is tested in Chromium. The APIs it needs are standard, +so other engines work where those APIs exist; verify them on the exact +engine you target: + +- Persistent storage needs OPFS sync access handles in a dedicated worker. + Chromium has them; Safari added them in 16.4; Firefox added them in 111. +- The multi-tab hosts need the Web Locks API and `BroadcastChannel`, which + every current engine provides. +- An embedded WebView is not the platform browser. Cordova and other + WKWebView or Android WebView shells can lack OPFS even when the device's + browser has it. `sqliteWasm({ storage: "persistent" })` fails fast where + OPFS is missing, and temporary storage still works wherever the WASM + module loads, so probe the target WebView before you commit to durable + in-app state. + The browser runtime needs two platform capabilities: - Persistent storage uses the OPFS SAH pool VFS, which needs a secure context