Interactive demos

Everything below runs entirely in your browser — no server. The forecasting code is a faithful JavaScript port of the Python package, verified to agree to 1e-6 by the parity suite.

Forecasting playground →

Pick a policy and a data regime; watch the one-step-ahead forecast and its uncertainty band update live, with rolling log-likelihood and coverage. Native JavaScript — instant and offline.

Running in Pyodide →

The actual Python package, compiled to WebAssembly, running unmodified in the browser. Proof that what you pip install runs client-side.

Use the port yourself

The JavaScript port is a zero-dependency ES module. Drop it into any page:

<script type="module">
  import { laplace } from "https://skaters.microprediction.org/js/skaters/index.mjs";

  const f = laplace(1);
  let state = null;
  for (const y of observations) {
    const [dists, st] = f(y, state); state = st;
    dists[0].mean;            // point forecast
    dists[0].std;             // uncertainty
    dists[0].quantile(0.975); // 97.5th percentile
  }
</script>