playground · wasm

Run SQLRite in your browser.

The complete SQLRite engine — B-tree storage, transactions, JOINs, aggregates, BM25 full-text, and HNSW vector search — compiled to WebAssembly and running entirely in this tab. No server, no account, nothing to install. Your data never leaves the browser. Try a sample dataset, or write your own SQL and hit /Ctrl+Enter.

Loading the SQLRite WASM engine…

How it works

The engine is the same Rust crate published as sqlrite-engine, built for wasm32-unknown-unknown with @joaoh82/sqlrite-wasm. The WASM module is ~750 KB gzipped and fetched once on first load. Because the browser build is in-memory only, the playground persists your SQL session (the statements you run) to OPFS — replaying it on reload to rebuild the same database. Use Download .sql to take that script with you.

Known limitations

  • In-memory engine. The WASM build has no file-backed mode, so there is no binary .sqlrite export yet — persistence is via SQL-script replay. Binary round-trip is a tracked follow-up.
  • OPFS support varies. Where OPFS write access isn't available (some private-browsing modes, older Safari), the playground falls back to localStorage, and if that's blocked too, the session simply isn't persisted across reloads.
  • No ask (natural-language → SQL). That feature needs a server-side API key, which a static browser page can't hold. It ships in the REPL, MCP server, and desktop app instead.
  • Aggregates over JOIN results and a few other surfaces aren't implemented in the engine yet — see the supported-SQL reference.

Want the full architecture write-up? See the playground README and the other example apps.