grub
A dining companion
that listens.
Your restaurant’s menu.
A conversation shaped around you.
SCAN. TALK. ORDER.
Everyday track
Every restaurant. The same work again.
The menu knows
the food.
It doesn’t know you.
A QR code gives you a menu. You still have to:
01 Find dishes that fit your diet.
02 Check ingredients and allergies.
03 Remember what everyone liked.
Your preferences and past choices get left behind.
Kopi & Satay House
Dine-in · Table 12
A dining companion between you and the menu
Your menu.
Your preferences.
A conversation.
Ask what to eat. Get suggestions from real dishes and prices, shaped around your tastes.
Kopi & Satay House
Chicken Satay
(10 sticks)
- Category
- Grill
- Menu tag
- Halal
- May contain
- Peanuts, soy
- Description
- Charcoal-grilled chicken with peanut sauce, cucumber and onion.
Speak naturally
“Vegetarian
and chicken
options, please.”
Talk through the choices while the menu and basket stay in view.
“Show me vegetarian and chicken options.”
Your words appear here so you can check what Grub heard.
A companion at the table
One screen.
The whole
conversation.
You can hear the answer, see the dishes and check your order together.
Less explaining, every time
Your next meal
starts with
what you like.
Saved preferences follow the diner. The Memory tab also shows past orders.
Confirm allergies and dietary rules before saving them. Let diners see and delete what Grub remembers.
- This restaurantSave the preferences you choose to share.
- Another menuThe same preferences help guide the conversation.
- Back againReview past orders in the Memory tab.
An agent can help. You make the call.
A final tap
before the kitchen
sees it.
Read back the dishes, quantities and total. Show the summary. Save the order after confirmation.
01Prices come from the server’s menu
02Special requests travel with the order
03Payment stays at the counter
(10 sticks)$9.00
Pay at the counter
The other side of the table
The kitchen gets
a clear order.
Table number, dishes, quantities and notes.
The kitchen view polls for new orders every two seconds.
Table 12
Two ways to talk.
One set of order actions.
Text and voice share cart tools and preferences. Final phone voice testing remains.
- Text or voiceClaude / OpenAI chat, or OpenAI Realtime with a short-lived key.
- Shared actionsAdd, remove and review dishes in one basket. Save confirmed preferences.
- You confirmCheck dishes, quantities, notes and total before placing the order.
- Server validates and savesMenu prices are checked, then the order is stored in Supabase.
What’s built.
What comes next.
Main · 0f47da9
13 October 2026
| Capability | Status | What that means |
|---|---|---|
| Restaurant menu + QR | Deployed | PR #12 · Website or photos → saved menu → QR |
| Text ordering + basket | Merged + tested* | Claude support; live OpenAI chat and basket checks |
| Kitchen dashboard | Integrated | Confirmed orders, live polling and mark served |
| Realtime voice | Phone test pending | Implemented; live session credentials tested* |
| Diner memory | Implemented | Confirmed preferences, order history and deletion |
| Grub brand + design | Applied to app | A1 bear, cream / orange / sage and shared tokens |
The restaurant keeps its own flow
Your restaurant.
Your payment.
Grub alongside.
The future agent could build the order on the restaurant’s site, hand control back for payment, then resume.
- Grub helps build the orderA conversation around the restaurant’s menu.
- You approve paymentHand control back to the restaurant’s checkout.
- Resume with GrubThis payment handback remains a roadmap idea.
GrabPay handback and live-site automation remain roadmap ideas.
A little less scrolling.
A little more
“that sounds good.”
A dining companion that understands the menu
and helps you choose.