Reservation widget · for restaurants

Reservations that feel like your restaurant not like everyone else's.

Dish Rebuilder keeps the dish.co engine you already trust, live availability, confirmations, emails, and replaces the generic booking box with a widget that wears your colours, speaks your guests' language, and lives on your site in a single line of code.

One-line install 11 languages Keeps your dish.co backend

The first impression

Same reservation. A table worth setting.

dish.co's default booking box does the job, but it looks like every other booking box on the web. Here's the exact same flow, rebuilt to belong to your restaurant.

Before The default dish.co widget
reservation.dish.co
After Rebuilt with Dish Rebuilder
myrestaurant.com

How it works

A new interface on a backend that already works.

Your guests see the widget. Behind it, every booking still flows through dish.co exactly as before, through a small proxy on your own server.

1

Your website

One <script> tag, pasted wherever the booking box should appear. It mounts itself in place.

2

The widget

A self-contained, brandable booking UI. CSS-isolated, multilingual, and configured entirely by data-* attributes.

3

dish.co

The official backend does the real work, slots, bookings, and the confirmation emails your guests receive.

Built for restaurants

Everything the booking box should have been.

Speaks 11 languages

Guests switch language in a tap. Dates, weekdays and months localise automatically to match.

FR · EN · DE · ES · IT · PT · NL · SV · NO · CA · DA

Wears your brand

Accent, dark and panel colours are set by attribute, match your site without a theme editor or a rebuild.

data-accent="#E8844B"

One line to install

A single script tag. It mounts itself exactly where you paste it, no target div, no build step.

<script src="/js/dishRebuilder.js">

Keeps your dish.co backend

Availability, reservations, CSRF and confirmation emails all stay on dish.co. We only replace the face.

via your Laravel proxy

Plays nicely with any site

Every style is scoped under .dw-widget. No collisions with your existing CSS, ever.

CSS-isolated

Many widgets, one page

Run several restaurants side by side. Each instance is fully independent, no conflicts.

multi-instance

Make it yours

One widget.
Your house style.

Change a few attributes and watch the booking flow on the right respond live, exactly how it behaves on a restaurant's own site. Colours shown are examples, any hex color value works.

Accent colour
Dark colour
Panel background
Restaurant name
Language

Install

Live in one line.

Paste this where the booking box should appear. Each restaurant gets its own widget, pre-filled with its colours, language and dish.co identifiers.

index.html
<!-- Dish Rebuilder · paste anywhere in your page -->
<script
  src="https://dishrebuilder.com/js/dishRebuilder.js"
  data-eid="hydra-238a4840-c57f-4dfd-9999-40cbc7d7ce79"
  data-establishment="317315"
  data-name="My restaurant"
  data-lang="EN"
  data-accent="#E8844B"
  data-dark="#1c1c2e"
  data-panelbg="#f9f5f2"
  data-max-covers="10"
  data-api-base="https://dishrebuilder.com"
></script>
  • data-eidYour dish.co widget ID, the hydra-… token used to fetch the CSRF token. Required.
  • data-establishmentYour numeric establishment ID on dish.co. Required.
  • data-nameThe restaurant name shown in the widget header.
  • data-langDefault language, one of 11. Guests can switch any time.
  • data-accentYour brand colour for buttons, selected dates and slots.
  • data-darkDark colour for selected covers and strong text. Any hex value.
  • data-panelbgPanel background for open accordion rows and the booking recap. Any hex value.
  • data-api-baseURL of your Laravel proxy that relays to dish.co.

Let us handle everything

We set up and host the proxy for you — your restaurant, your colours, your language. No code, no server, no maintenance.

1 free month to try, then €60 / year.

Ready when you are

Give your guests a booking they'll remember.

Keep your dish.co account exactly as it is. Drop in the widget, and your reservations start looking like your restaurant in minutes, not a migration.