Jaffle Shop
dbt's classic Jaffle Shop dataset, regenerated as a live simulation at any scale.
The fictional store from dbt's "how to model data" tutorials, rebuilt as a simulation. An order's status — placed → shipped → completed, with an optional return tail — is literally its finite-state-machine state. Customers accumulate orders, each order spawns one or more payments, and timestamp fields stamp ordered/shipped/completed/returned dates against a clock where one turn is one day. The output matches the shape of dbt's raw seeds.
A drop-in, scalable stand-in for the most widely-used data-modelling tutorial dataset. Because every row is generated by the same status distributions as the original, the snapshots reproduce its mix (mostly completed, ~12% returned) — handy for teaching, testing transforms, or benchmarking warehouse tooling at sizes the static seed can't reach.
Linked tables with guaranteed referential integrity.
Generated REST endpoints. Also exposed as MCP tools.
OSI-compatible definition, emitted with the dataset.
# jaffle-shop.osi.yaml — emitted automatically semantic_model: name: "jaffle-shop" source: "duckdb://jaffle-shop.db" entities: - name: customer primary_key: id dimensions: - name: state type: categorical - name: t type: time measures: - name: row_count agg: count - name: active agg: sum filter: "state = 'ACTIVE'"
More worlds.
Game of Life
Conway's automaton as a perfectly observable, deterministic grid world.
London Underground
A live tube graph — eleven lines, hundreds of trains, platforms held as a mutex.
Pac-Man
A self-playing arcade game — ghosts chase a flood-filled distance field.