Case study 02 / 04 · Restaurant Operating System
← All workMenuvyn

One tap, the whole restaurant moves.
A restaurant platform connecting QR menus, shared table orders, a kitchen display system (KDS) and a cloud point of sale.
- Role
- Founder & sole engineer: architecture, real-time sync and full-stack development
- Year
- 2026
01Overview
Overview
Built with
- Next.js
- React 19
- TypeScript
- Supabase & PostgreSQL
- Supabase Realtime
- Cloudflare R2
- Payments.lk & LankaQR
- Web Audio API
Filed under
- Own product
- SaaS
- Real-time
02The challenge
The challenge
Restaurants need to update menus, take table orders and keep the kitchen informed. A static PDF menu cannot handle that workflow, and dedicated hardware adds another cost.
03The thinking
Roads taken, and the ones that weren’t.
- 01
Took
Real-time collaborative group ordering for tables via WebSockets.
Instead of
Isolated individual diner carts requiring separate orders per person.
Because
Diners at the same table can add items to a shared order and see who added each item before submitting it.
- 02
Took
Dual ordering architecture: direct digital kitchen submission and offline-capable Waiter QR Dockets.
Instead of
Mandating tablet hardware in the kitchen before any orders can be placed.
Because
A waiter can scan the diner's order, including modifiers and totals, without requiring a kitchen tablet.
- 03
Took
In-browser Web Audio API alert synthesis for kitchen display chimes.
Instead of
Streaming external MP3/WAV audio files over the network.
Because
Generating the chime in the browser avoids a separate audio download. Playback still depends on browser audio permissions.
- 04
Took
Trilingual content model (English, Sinhala, Tamil) as first-class entity fields.
Instead of
Automated browser translation plugins (Google Translate).
Because
Authored fields let restaurants supply dish names and ingredients in each language, rather than relying on automatic translation.
04The engineering
The system, taken apart.
Supabase Realtime channels connect the diner's cart, the kitchen display, the counter register and sold-out controls. Changes are broadcast to subscribed screens without polling.
01
Diner
- Table QR scan
- Collaborative group cart
- Trilingual UI (EN/SI/TA)
02
Edge & Routing
- Next.js App Router
- Custom domain proxy
- Food court order routing
03
Kitchen & POS
- Real-time KDS tablet line
- Web Audio alert chime
- Cloud POS & staff PIN
04
Data & Media
- Supabase PostgreSQL
- Supabase Realtime channels
- Cloudflare R2 media bucket
The loopReal-time kitchen-to-table pipeline: ticket status changes (Pending → Preparing → Ready → Served) stream back to the customer's live order tracker, while floor 86 toggles instantly grey out sold-out items across all active table menus
What was built
- 01
Built a mobile web menu opened from a table QR code, with haptics, bottom sheets, dietary filters and typo-tolerant search.
- 02
Built collaborative real-time table group ordering where diners seated at the same table add items into a unified live cart via Supabase Realtime WebSockets with guest attribution.
- 03
Designed the Waiter Order QR Docket: for venues without kitchen tablets, the guest cart synthesizes a dense QR docket encoding line items, modifiers, table numbers, and totals for instant waiter scanning.
- 04
Created a real-time Kitchen Display System (KDS) tablet cook line with ticket timers, order status progression, and browser-synthesized Web Audio API alert chimes.
- 05
Built a lightweight Cloud POS & Counter Register with staff PIN authentication, cash and card split payments, and thermal receipt printing.
- 06
Implemented first-class trilingual localization across English, Sinhala (සිංහල), and Tamil (தமிழ்), with instant script switching and localized price rendering (LKR / USD).
- 07
Architected food court multi-vendor support, allowing diners to order from multiple stalls under one unified dining court docket.
05The experience
What people actually see.
Captured from the live product. Nothing here is a mock-up.




06What shipped
What shipped
- Browser-based menus, table ordering, kitchen displays and a counter register.
- Live collaborative table ordering with real-time WebSocket sync.
- Tablet KDS with zero-dependency native Web Audio chime alerts.
- Full trilingual localization across English, Sinhala, and Tamil.
Next case study
Harriet Shopping
Two audiences, one storefront.
Continue
