Live demo · WebAssembly

kevy, running in this tab.

This page loads the real kevy engine as a wasm module and opens it with persistence on. Everything below runs locally — there is no backend. Type help for the command list.

loading kevy.wasm …

      
kevy>

Persistence you can refresh

  1. set greeting hello
  2. Reload this page (writes stream to OPFS as a kevy append-only log; IndexedDB where OPFS is unavailable).
  3. get greeting — still there.

The stored bytes are a standard kevy AOF: the same log replays in a native kevy server unchanged.

Pub/sub across two tabs

  1. Open this page in a second tab.
  2. Tab A: subscribe news
  3. Tab B: publish news hello-from-B
  4. Tab A prints the message — delivered over BroadcastChannel, at-most-once, no backlog.

TTLs, counters, scans

set session abc ttl 5000 then watch pttl session count down and the key expire. incr visits · keys * · dbsize · flushall.

What this is

The @goliajp/kevy npm package: a ~420 KB wasm32-unknown-unknown module behind a hand-written ES-module loader. Zero dependencies, no binding generator. Measured against browser storage in bench/WASM-BENCH.md: durable writes at 593k–848k ops/s vs 46k for raw IndexedDB.