On the record · 2025 to now · Independent
Mantel
A white-label operations platform for restaurants and bars in Ecuador, from the floor to the SRI. Built for one room first.
- Role
- Design engineer
- Customer zero
- El Encanto, Quito
- Timeline
- 2 months
- Tools
- Paper, Notes, Claude
Mantel is a white-label operations platform for restaurants and bars in Ecuador: the floor, the kitchen, inventory and cost, the digital menu, staff and roles, SRI electronic billing, and a public website with online reservations, in one system. I'm designing and building it, with El Encanto in Quito as customer zero: a wine garden that needed to run service, and a real Friday night to prove the whole thing against.
A restaurant isn't won at the door. It's won in the stretch between sitting down and leaving: the order, the kitchen, the bill, the inventory, the SRI. And most places in Ecuador run that stretch on a pile of disconnected tools: three WhatsApp groups to coordinate the floor, a paper comanda that never quite reaches the kitchen, an Excel sheet someone fills in by hand at the end of the night to bill against.
Each tool is fine on its own; together they leak. Orders get lost between shifts, stock is a number nobody trusts, and the SRI (Ecuador's mandatory electronic invoicing) becomes a separate chore instead of just the sale. Existing point-of-sale systems don't fix that so much as rent you a rigid version of it: one account shared with a thousand other venues, shaped to none of them.
El Encanto, a wine garden in Quito with an outdoor garden that doubles as the dining room, needed something to actually run service. I wanted to build it from the room out, not fit the room to someone else's POS.
So El Encanto became customer zero. Building against one real venue (its zones, its menu, its rush) kept every decision honest: if a feature didn't help the host on a Friday at 8pm, it didn't ship. But I designed it from the start to travel.
Mantel is white-label. Each venue gets its own instance, in its own color, logo, and domain, and the same operation wears the skin of the place. Customer zero is a wine garden; customer one could be a bar. Proving it against a single, demanding room is what makes it trustworthy enough to become a product.
The first screen is the floor: a live map of the room, every table free, seated, or reserved, with covers and how long they've been sitting, at a glance. Started to rain? The host disables the terrace zone in one tap.
I split the color language on purpose. The brand red carries warmth and voice; a cool operational teal is scoped onto the product itself: mesa states, live dots, the data. Warm brand, cool data. And nothing in the interface has a border radius except the product prototypes, which stay rounded so they read, unmistakably, as "the actual app."
The waiter takes the order on whatever device is nearest and fires it. The comanda lands on the kitchen and bar displays instantly: a paperless KDS, no shouting across the garden, no ticket lost on the way. Change the order and the kitchen sees it the moment it happens.
A small local print bridge still pushes a physical ticket to the kitchen printer for stations that want paper, without putting paper back in the critical path.
From there it's the whole night, in one place. Inventory runs by store (bar, kitchen, cellar) with recipes tied to each dish, so stock drops with the sale and you get cost and margin per plate, live, instead of a guess at month's end. Cash opens each shift with its float and closes with the count and the difference in view.
Reservations and walk-ins flow onto the floor; staff clock in and out and the rota builds the week; eight roles each see only their slice. Ten areas, but one model: every screen is a live view of the same service.
The part that usually breaks last is billing. The SRI is mandatory, and in most setups it's a separate program someone re-keys into after the fact. In Mantel it isn't bolted on. It's the same object as the sale. The comanda becomes the invoice: 15% IVA and 10% service figured automatically, and when you close the table the SRI is already filed. The bill files itself.
The platform doesn't stop at the back of house. Your public website comes included: a landing for the place, a QR menu in your brand that 86s a dish the instant the kitchen runs out, and online reservations that drop straight onto the same floor your host is watching. A booking made on the website is just another table on the map.
This is the part I care most about. You don't share one account with a hundred other restaurants. We deploy your own instance, themed to you (your color, your logo, your domain), and the entire operation re-skins to match. The floor, the KDS, the menu, the invoices: one system, your brand.
Under it: a React + Tailwind client that installs as a PWA on any phone, tablet, or kitchen screen and holds up when the wifi blinks; a Hono API on Node with WebSockets carrying live order state; Postgres with Drizzle, typed end to end; and that small print bridge for the kitchen.
The marketing site itself is built the same way: the "screenshots" on it aren't images, they're the real components running with plausible, ticking data. A prototype you can poke is a better argument than a render.
Mantel is in production today in Quito, running El Encanto's service as customer zero, and in active build as I shape it toward the next venues. It started as the thing one restaurant needed to get through a Friday night. It's becoming the system any of them can run.