/ Project: Restaurant, Lviv · 2025 /

A restaurant website with an online menu, table booking and banquets

Case study: a restaurant website in Lviv with an online menu the venue updates itself, table booking confirmed in Telegram, banquets and gift cards.

Key decisions A menu the venue updates itself in a minute
Type
Websites
Industry
Restaurants and coffee shops
Year
2025
Build stages 4–5 weeks
  1. Brief & research ≈ 1 wk
  2. UX/UI design ≈ 1 wk
  3. Development ≈ 2 wk
  4. QA & launch ≈ 1 wk
  • Astro
  • Sanity
  • Telegram Bot API
  • LiqPay
  • Google Maps API

Product screens 08

  1. 01 Home
  2. 02 Menu
  3. 03 Table booking
  4. 04 Banquets and corporate dinners
A restaurant website with an online menu, table booking and banquets
  1. 05 Events and chef’s dinners
  2. 06 Gift cards
  3. 07 Gallery
  4. 08 Contacts and directions
About the project

A website for a restaurant in central Lviv where guests see the current menu with prices and allergens and book a table themselves, while the venue updates the menu in a minute, gets bookings in Telegram and takes banquet requests through dedicated pages.

  • Menu without a PDF Dishes, prices, weight, photos and allergens in the admin. A price change or stop list does not wait for a designer.
  • Table booking Date, time, party size and area. The manager gets the confirmation in Telegram, the guest gets a reminder.
  • Banquets, events and gift cards Dedicated pages with formats and a request form, a chef’s dinner calendar, gift cards paid by card.
  • Found on the map Address, kitchen hours, Restaurant and Menu markup and table QR codes all lead to one menu.
01 · The brief

A 64-seat restaurant with a terrace and a banquet hall had no website. The menu lived in a PDF and in Instagram photos, and the prices went stale after every seasonal change. Tables were booked by phone, and at peak hours, with everyone busy in the hall, calls went unanswered. Bookings went into a notebook, and now and then guests arrived to a table that was already taken. Banquet and corporate requests got lost in Instagram messages, and the Google Maps profile had neither a menu nor a booking link.

02 · What we built

We built a company website on the Lite plan, centred on the menu and booking. The menu sits in Sanity CMS: categories, dishes, prices, weight, photos and allergens; the manager updates the stop list and seasonal changes from a phone. Booking: the guest picks a date, time, party size and area (hall, terrace, banquet hall), the booking goes to the manager through a Telegram bot, and the guest gets a confirmation and a reminder with a cancel button. Banquets and corporate dinners have their own pages with formats and a request form, chef’s dinners have an events calendar. Gift cards are sold online with LiqPay payment. Address, kitchen hours and Restaurant and Menu markup link the site to the Google Maps profile, and QR codes on the tables lead to the same menu page.

  1. Before Menu in a PDF and Instagram photos, prices go stale.

    After Menu with prices, photos and allergens that the venue updates itself.

  2. Before Phone bookings at peak hours, with nobody free to answer.

    After Online booking confirmed to the manager in Telegram.

  3. Before Bookings in a notebook, guests arrive to a taken table.

    After All bookings in one place, times and areas never overlap.

  4. Before Banquets and events get lost among posts and DMs.

    After Separate banquet and event pages with a request form.

03 · The client’s path

How a person moves through the product, from the first step to the result the business needs.

  1. Finds the venue

    Searches “restaurant in central Lviv” in Google Maps and sees links to the menu and booking.

  2. Checks the menu

    Current prices, photos, weight and allergens, from a phone at home.

  3. Books a table

    Date, time, party size and area: hall, terrace or banquet hall.

  4. Gets a confirmation

    The manager sees the booking in Telegram, the guest gets a confirmation and a reminder.

  5. Comes back

    Books a banquet, comes to a chef’s dinner or gives a gift card.

04 · What is inside the project

  1. Menu with prices, photos, weight and allergens, edited in the admin from a phone

  2. Table booking by date, time, party size and area, confirmed in Telegram

  3. Banquet, corporate and event pages with a request form

  4. Gift cards paid by card

  5. QR codes on the tables lead to the same online menu

  6. Address, kitchen hours, Restaurant and Menu markup for Google Maps

Forecast

Within the first 2–3 months, 30–50% of bookings move from calls online, “any tables?” and “what is on the menu” calls at peak hours drop by roughly a quarter, and reminders with a cancel button free up tables that used to be held for nothing. A guideline, not a promise.

05 · Architecture

How the product is put together: from what the user sees to the data and services behind it.

  1. User Opens the site on a phone or a computer
  2. Interface What a person sees and taps
    • Astro
  3. Logic Rules, roles and scenarios
    • Telegram Bot API
    • LiqPay
    • Google Maps API
  4. Data & integrations Where the data lives and what the product talks to
    • Sanity

06 · How a project like this is built

Total: 4–5 weeks
  1. 01 ≈ 1 wk Brief & research Goals, audience, page structure and what the product must do
  2. 02 ≈ 1 wk UX/UI design Prototype, design of the key screens and the mobile version
  3. 03 ≈ 2 wk Development Front end, CMS, integrations and animation
  4. 04 ≈ 1 wk QA & launch Device testing, speed, SEO groundwork and launch

Typical phase split for a project of this size

07 · Services in this project

Next project Beauty studio, Lviv · 2026 A beauty studio website with online booking and deposits Beauty and salons

Solutions for a specific job

Ready-made scenarios for your case — with examples and indicative pricing.

More projects

All projects →