Skip to content
Contents

Demos

Scale

Thousands of open queries. 1k writes/second. 1 GB of data. 1 vCPU.

The Agent Desk demo: 4,100 live queries and 1,000 writes/second on one core

Running live, with the same page on two hosts in front of one shared backend:

Try it locally:

cd rust
cargo run -p rindle-scale-demo --profile release-server -- --no-guide

Full-Stack Sync

Pair with TanStack DB or @rindle/sync-client for instantaneous client-first reads and writes throughout your app.

Because the app controls precisely the data to sync with queries, the oversync problem common with sync is elegantly avoided. The app can tune what it presyncs to balance startup time and interaction speed.

zbugs running on Rindle

Try it locally (needs Docker for Postgres; this config still uses a Postgres upstream):

pnpm install
pnpm --filter @rindle/zbugs build:runtime   # builds the Rindle binaries
cd apps/zbugs && pnpm dev                   # starts Postgres, the Rindle gateway + follower, and Vite on :5173
ZERO_UPSTREAM_DB='postgres://rindle:rindle@127.0.0.1:<port>/app' pnpm db-seed   # seed it, using the port `pnpm dev` printed

Client-Side Live Queries

The core Rindle database is a 200KB library, gzip-compressed. It works on the web via wasm, or on iOS and Android natively. It provides a full relational, embedded database with live queries that answer and update in microseconds. Hook it to the Rindle server for a full, opinionated stack, or to your own server however you want.

The wasm canvas demo

Try it locally: the demo lives in its own repo, rocicorp/wasm-canvas-demo.

Streaming Queries Against Any Change Source

Put Rindle downstream of your existing database, Kafka stream, whatever. Delete your websockets, webhooks, and API. Agents can directly watch any relational query they want, efficiently. Rindle becomes shared infra within your org that agents use to watch changing data.

The Wikipedia firehose demo

Rindle sits downstream of Wikimedia’s live edit firehose. Every browser that opens attaches to the same maintained boards, so N readers cost one pipeline, not N.

Try it locally: the data tier in one terminal, the UI in another.

cd apps/wiki-demo && pnpm dev       # boots the write-master/follower pair + ingests the live Wikimedia feed
cd product-page && pnpm dev         # then open http://localhost:3200/wiki