A website that captures the atmosphere of the dining space through an interactive WebGL tour, handles online reservations, and allows the team to update the menu and event listings on their own — without involving developers.
A website for a premium restaurant where guests can explore the dining room in a 3D tour, browse the menu, and book a table online. Content changes frequently, so the manager edits menu items, prices, and event descriptions through an admin panel. The site is trilingual and stays consistently fast on mobile — critical for tourist traffic.
Nikas is a restaurant that offers a full dining experience: interior, service, evening program, cuisine, and presentation. A significant share of guests are international, and getting information about the venue in their own language matters to them. The owners wanted a site that would work as a real booking tool and reflect the restaurant’s aesthetic.
Immersive interior
Photography didn’t fully capture the feel of the space. The project needed an interactive 3D tour in the browser with smooth navigation and performance on smartphones.
Menu changes weekly
Updating items, prices, and allergens had to take minutes and be done by the administrator without outside help.
Trilingual setup
Language switching had to be instant, and the content had to stay manageable so the team wouldn't waste time on manual fixes.
Event listings
Concerts and events had to be pulled in automatically so the homepage always showed the current program.
Speed as a key conversion factor
Tourist mobile traffic is sensitive to load speed. We had to keep the load metrics steady even with the 3D content layered on top.
We built the site around a 3D tour, trilingual content, and online booking. For the operational side, we implemented a Node.js-based CMS so the team could manage the menu and pages on their own. Event integration was implemented as an automatic feed from a calendar, with 3D textures and critical assets optimized so the site stays fast.
WebGL tour embedded in the site
We built the 3D scene in Three.js with navigation hotspots and controlled ambient audio. To keep things stable on smartphones, we implemented progressive loading and lighter rendering modes so the tour ran smoothly on mobile.
CMS for menu and pages
We implemented an admin panel on Node.js with structured blocks for dishes and wines. This allows the manager to edit the title, price, allergens, description, and media, and have changes go live immediately with no manual releases.
Multilingual content and translation management
We designed a content structure organized by language with instant UA/EN/FR switching without page reloads. We also implemented the SEO logic for language versions so the pages indexed correctly.
Event listings and booking
We configured automatic event imports from Google Calendar to the homepage, and added a booking form with table-availability checks and reservation logging into the CRM, so the team receives bookings directly inside their operational workflow.
Media and 3D asset delivery
We designed CDN-based delivery for images and textures to optimize loading of the page's critical resources. The target was an LCP around 0.9 seconds, so the site remains fast despite heavy content.
At the start we aligned on the site's primary goals — drive bookings and introduce guests to the dining room online. We defined the critical scenarios: exploring the 3D tour, scanning the menu quickly, switching language, booking a table, and seeing the current event lineup. We defined the expected menu-update frequency and admin roles so the CMS mirrored the restaurant's real workflow.
+7 Resource
After launch, the site became both a booking channel and an operational tool for the restaurant team.
in the first month, driven by a clearer path to reservation
average time on site, up from baseline
to update a menu item via the admin panel — name, price, and allergens
on mobile, even with the 3D tour layered in
since the program is pulled directly from the calendar
Or send us a message and we'll get back to you within 15 minutes during business hours