03 · In production
Darb REST
A more expressive digital home for restaurants.
Multilingual digital menus for restaurants and cafés. Owners manage a branded, mobile-first menu site, choose from nine templates, publish in up to three languages and share it with QR codes. A Darb product, running in production at rest.darb.co.il.
- Nour’s role
- Product engineering · Restaurant experience
- Status
- Plans: Starter, Pro and Business. WhatsApp requests are available on Pro and Business.

What is real today
Live
- Menu sites with nine templates, three languages and QR codes
- Structured WhatsApp order and reservation requests on eligible plans
- Multiple locations with branch menus on the Business plan
Not claimed
- WhatsApp requests are messages: they do not create stored orders, payments, status tracking or confirmed bookings
- Stored orders, checkout, payments, table ordering and a kitchen display exist as switched-off foundations, not current features
The problem
Small restaurants often end up with a PDF menu or a generic site builder that fights them on dishes with options, prices per branch and three languages.
Guests switch between Arabic, Hebrew and English. A menu that only mirrors an English layout reads wrong in both directions.
How it works
01
A template engine, not nine copies of a page: templates are presentation only, every template renders the same menu model and cart, and a semantic theme layer of 22 colour roles sits on top.
02
Every appearance change is edited as a draft and previewed on real content at phone, tablet and desktop sizes before it goes live. Publishing copies the draft atomically; public pages read only the published snapshot.
03
Right-to-left Arabic and Hebrew are native, with Cairo, Heebo and Ubuntu, CSS logical properties and complete dictionary parity. No hard-coded UI strings.
Try it
Choose a language on the kiosk. The same menu changes script, typeface and direction — the way a real Darb REST page does.
Choose the menu language
Demo café
Breakfast
Shakshuka
Tomatoes, peppers and eggs
₪42
Labneh plate
Olive oil, za’atar and warm bread
₪34
Knafeh
Warm cheese pastry in syrup
₪28
Mint lemonade
Fresh lemon and mint
₪16
Illustrative demo menu for a fictional café. Pick a language to begin.
Selected capabilities
Rich dishes
Variants, modifiers, availability and dietary information, with opening hours computed in each branch’s time zone.
Draft and publish
Transactional saves with a per-business lock and optimistic revisions, so two editors cannot silently overwrite each other.
Server-owned totals
On Pro and Business, cart totals are recalculated on the server from the published menu before a structured WhatsApp request is generated.
Safe media
Logos and covers go through a private upload pipeline and are re-encoded to WebP at bounded responsive widths.
Tenant-aware SEO
Canonical URLs, alternate languages, Restaurant JSON-LD and a paginated sitemap; noindex on capability URLs and the admin console.
Tested at every layer
Vitest unit suites, pgTAP assertions for RLS and RPC contracts, Playwright across locales and widths from 375 to 1440 px.
Architecture
Guest site and admin console share packages over Server Components and Server Actions; business membership is the tenant boundary.
apps/web
Guest restaurant pages at rest.darb.co.il/<restaurant>.
apps/admin
Owner console and the Darb platform console for applications, agreements and plan prices.
packages
types · validation · ui · i18n · supabase
Supabase
Auth, PostgreSQL with RLS and RPCs, Storage. Hosted on Vercel in Frankfurt.
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- Supabase · Postgres 17
- Zod · Sharp
- Vitest · Playwright · pgTAP
The live product
Captures of the public production pages, and of the app running locally from its own repository with fictional demo data. No real customer or staff data appears.











From the repository

