arcvision
Restaurant & Hospitality

Restaurant website & custom management system for a Gdańsk restaurant

Online reservations, multilingual website and a custom CMS that lets the team manage content without a developer.

3.5× faster
Mobile load time vs. the old website
0 calls
Needed to book a table
3 languages
Website, menu and booking
The new website puts the menu and table booking within reach from the first screen.

A website and reservation system for a busy restaurant in the heart of Gdańsk’s Old Town, designed from first-hand experience of its daily operations.

Guests book a table online in a few steps and get an email at every stage. The team sees every reservation in one dashboard, gets an instant Telegram alert for each new request and manages the website content without a developer.

This is a self-initiated project. It wasn’t launched for the restaurant, but the complete system is available below as a working demo.

The challenge

We saw these problems every day while working inside the restaurant.

Too many reservations depended on phone calls

Gdańsk is one of the busiest tourist destinations on the Baltic coast. In high season, the restaurant received a large number of reservation requests by phone, while the team was already serving a full room. Not every call could be answered quickly, and hiring someone just to handle bookings would have been an unnecessary cost.

Every phone booking also meant manual work: answer the call, take down the details, then enter the reservation into the system by hand.

A guest who can’t get through rarely waits for a callback. They book somewhere else, and the restaurant never finds out. It’s the same pattern we see with sales leads: the first minutes after an enquiry decide most of the outcome.

Guests needed information faster, and in more languages

During busy hours, even a few extra minutes of waiting can affect the guest experience. Guests had questions about dishes and ingredients while staff were focused on service. Many of them came from abroad, but the website offered only two languages, and the paper menu couldn’t give international guests detailed information in a language they understood.

The website wasn’t built for phones

The existing website had no mobile version, no digital menu and limited language support. On a phone, its main content took 13.8 seconds to load. Guests couldn’t easily browse dishes, view photos or check ingredients before or during their visit.

For the business, this meant missed reservations, more manual work for staff, slower service at the busiest times and a higher risk of negative reviews.

Website at the start of the project · July 2026

Booking a table in a few steps

Before, guests had to call the restaurant or use a third-party booking app. Now the whole process happens on the restaurant’s own website, in the guest’s language:

  1. The guest chooses a date and time.
  2. They enter their contact details.
  3. The request appears in the dashboard in real time, the team gets an instant Telegram alert, and the guest receives an email saying the request is awaiting confirmation.
  4. A manager reviews and confirms the booking.
  5. The guest automatically receives a confirmation email.
Reservation flow, start to confirmation
The guest books on a phone, and the team gets a Telegram alert with all the details within seconds

All online bookings land in one dashboard, where managers can find a reservation by phone number or email, mark guest arrivals and handle cancellations. The system is also ready to pull in bookings from third-party platforms via API as a next step.

A menu built for phones and international guests

The website was designed mobile-first. Most guests open it on a phone, often on their way to the restaurant or already at the table, so the mobile experience was treated as the core product rather than an adaptation of the desktop version. It matters for search too: Google indexes and ranks websites based on their mobile version.

On mobile, the main content now loads in 3.9 seconds instead of 13.8, and the Google PageSpeed performance score went from 55 to 85 (from 67 to 99 on desktop).

Google PageSpeed Insights, mobile · Measured on 2 October 2026

Guests can browse the menu, check prices and ingredients, view photos and read dish descriptions in English, Polish or German, without waiting for a member of staff.

The new website on a phone, in English and German, with booking one tap away on every page

Managing the website without a developer

The custom admin panel gives the team control over everyday content. Managers can add, edit and remove dishes and categories, update prices and opening hours, manage contact details, and change photos and homepage banners, all from one place.

Menu and homepage content: dishes, categories and hero slides
Contact details and opening hours, updated across the whole website from one place

All content is managed in three languages, and new languages can be added as the restaurant’s needs grow.

The website also collects newsletter sign-ups. Every subscriber confirms their email address, so the restaurant builds its own list of verified guests for future campaigns.

What changes for the restaurant

Fewer phone calls, less manual work for staff and faster answers for guests, especially in high season, when the restaurant serves visitors from many different countries.

  • Before: Reservations mostly by phone
    After: Guests book online in a few steps, any time of day
  • Before: Every booking entered by hand
    After: Requests land straight in one dashboard
  • Before: New bookings noticed only when someone checks
    After: Instant Telegram alert for every new request
  • Before: Booking details passed on over the phone
    After: Automatic emails from request to confirmation
  • Before: Every website update needs a developer
    After: The team edits menu, prices and hours itself
  • Before: Paper menu, two languages, no mobile version
    After: Mobile-first digital menu with photos and ingredients in three languages

Explore the project

The project is available as a fully working demo. Explore the website, try the reservation flow or open the admin panel to see how content and reservations are managed behind the scenes.

See it live
Login
demo@riverside.pl
Password
demo1234
Demo account with limited permissions. Feel free to click around.
Built with
Frontend
Next.js 15 · React · TypeScript · Tailwind CSS
Database & backend
Supabase · PostgreSQL · Realtime
Email
Resend — guest emails, owner alerts, newsletter sign-up with email confirmation
Notifications
Telegram — instant alerts for new reservations
Languages
next-intl
Forms
React Hook Form · Zod
Testing
Jest · Testing Library

Want results like these for your business?

Tell the AI Consultant about your business and get a personalized automation plan in 2 minutes. Free, no commitment.

Get Your Free AI Automation Plan