Run dinner service like an engineer.
ShiftOps models a restaurant as a live operations system. Tables open, checks grow, payments arrive, incidents appear, and the same shift can be investigated with real SQLite — all inside one static webpage.
| Payment | Check | Server | Type | Check total | Paid | Tip | Tip % | Time |
|---|
Relational data: servers, restaurant_tables, checks, payments and incidents use IDs and relationships instead of one giant flat object.
Event-driven simulation: seating, check updates, payments and incidents generate timestamped events.
SQLite in WebAssembly: the SQL console queries a real SQLite database in the browser. The current simulation state is mirrored into SQLite whenever business data changes.
Human-in-the-loop handling: suspicious data is surfaced for review instead of silently “corrected” when intent is uncertain.