ProvSQL Playground

ProvSQL Studio running entirely in your browser: PostgreSQL with the ProvSQL provenance extension, compiled to WebAssembly. No install, no server, no account; everything runs on this page, on demo databases.

Your browser does not support JSPI. The Playground needs WebAssembly JavaScript Promise Integration, which your browser does not appear to enable, so it will not run here as-is. See the supported browsers below. (You can still try, but it will likely hang.)

Launch the Playground Follow the interactive tutorial

First load fetches a few megabytes (PostgreSQL and Python, as WebAssembly) and takes a few seconds; it is then cached.

New to ProvSQL? The tutorial is a notebook of runnable cells that adds provenance to a small database and walks through semiring evaluation and probability computation; on your first visit, the Playground opens on it. The documentation's case studies are bundled as notebooks too: open them from the Notebook mode's Open example menu, or jump straight to one (intelligence agency, open science database, wildlife photo archive, air-quality sensor network, peer-review assignment).

Everything runs in-process; external tools are not available. The browser cannot launch helper programs, so the external knowledge compilers (d4, c2d, miniC2D, dsharp, weightmc) and graph-easy are absent, and options that rely on them do not appear. Probability is computed with ProvSQL's built-in methods. Everything else works: semiring evaluation, where-provenance, Shapley and Banzhaf values, continuous random variables, and circuit / tree-decomposition rendering (via a WebAssembly Graphviz).

Browser support

The Playground relies on JSPI (WebAssembly JavaScript Promise Integration), so it needs a recent browser:

BrowserStatus
Chrome / Edge 137+Works out of the box.
FirefoxWorks once JSPI is enabled (one-time flag, below).
SafariNot supported yet (no JSPI).

Enabling JSPI in Firefox

  1. Open about:config (accept the warning).
  2. Search for javascript.options.wasm_js_promise_integration.
  3. Set it to true, then reload this page.

Prefer a real install? ProvSQL and ProvSQL Studio run on any PostgreSQL: see the documentation.

Curious how it works? The developer documentation explains the architecture: PostgreSQL and ProvSQL compiled to WebAssembly via PGlite, Pyodide running the unmodified Studio Python, the JSPI bridge, and the self-hosted static build.