VESPER: a booking system for a Dinner ยท Show ยท Club in Dubai, built in Lovable ๐
For the #lovablechallenge I picked a business I know from a decade in Dubai hospitality: a venue where dinner is at 8, the show at 9, and the room turns into a club at 11:30.
The problem
Group bookings live in WhatsApp. One birthday table takes around 12 messages to confirm: date, headcount, zone, dietary needs, club table after the show. Weekends sell out while weeknights sit half empty, and every no-show is an empty seat someone else would have taken.
What I built
For guests:
โ Live availability per night, with dinner and club selling out independently
โ An interactive room map instead of a dropdown: zones glow by how full they are
โ "Keep your table" after the show turns dinner guests into club guests
โ Dietary needs and birthday moments captured once, at booking
โ A digital ticket instead of a "we'll get back to you"
For the owner:
โ A Tonight view: covers, zones, allergies and birthday moments at a glance
โ A calendar showing seats and tables left for every night
โ Automatic reconfirmation the day before. Unconfirmed seats are released and offered to the waitlist
โ A kitchen sheet with covers and every allergy, sent before service
โ Follow-ups for abandoned bookings, thank-you notes, and a "same table next birthday?" message 11 months later
โ A demo time simulator, so you can watch every automation fire in real time
Before: 12 messages per booking, a manager glued to WhatsApp, empty seats from no-shows.
After: a 2-minute self-serve booking, and a venue that follows up on its own.
Vesper is a fictional venue built to a real brief, the way a client project would be. Messages are previewed inside the app for the demo.
UNTITLED is a fictional independent tattoo studio in Amsterdam, built around a very real problem: tattoo bookings often live in DMs.
Clients ask about prices, availability, placement, references and custom ideas, while artists spend time managing the same back-and-forth manually.
UNTITLED brings that entire process into one connected experience.
The product has two sides:
CLIENT VIEW
Clients can browse available flash, place tattoos on a 3D body model, choose a date and time, complete a demo checkout, or submit a custom tattoo request with references, placement, size, budget and preferred availability.
ARTIST VIEW
The artist dashboard brings together bookings, payments, calendar availability, flash management, custom enquiries, quotes and activity in one place.
Both views are connected, creating a fully working end-to-end demo.
A flash booking updates the artist calendar and design availability, while a custom request appears in the dashboard for the artist to review, quote and turn into a confirmed appointment.
3D PLACEMENT
The booking flow includes an interactive 3D tattoo placement system, allowing clients to choose body type, skin tone and body area, then position, scale and rotate the selected tattoo before booking.
This replaces part of the placement conversation that would normally happen through messages.
CUSTOM REQUESTS
Not every tattoo starts from an existing design.
Clients can switch from FLASH to CUSTOM and send a structured enquiry with reference images and project details.
The artist can then review the request, create a quote and propose an appointment directly from the dashboard.
FULLY RESPONSIVE
The complete experience is responsive across desktop, tablet and mobile, including the website, booking flow, 3D placement interface and artist dashboard.
DEMO
UNTITLED is a functional demo built for the Lovable Challenge.
Payments are simulated and the data is session-based so the full experience can be tested repeatedly, but the core product logic is fully interactive across both Client and Artist views.
BUILT WITH LOVABLE
I built UNTITLED entirely in Lovable, from the client-facing website to the booking logic, 3D placement experience and artist dashboard.
I also applied to the Lovable Partner Program during the challenge and Iโm now officially a Lovable Partner!
Live website: https://untitledamsterdam.lovable.app/X Post
Walkthrough video (for product and process) below.
What if you could explore a basketball arena in 3D before booking your seat?
You found the game. But before you pay, how do you know which seat is worth it? A flat seating chart gives you a section and a number, but it can be hard to picture your position relative to the court.
So I built BOUNCE with Lovable, a basketball ticketing concept centered around interactive 3D seat selection.
Rotate the stadium, zoom into the stands, explore different sections, and compare prices before choosing your seats directly inside the 3D arena. The goal is simple: help fans feel more confident about where theyโre sitting before they book.
From there, complete checkout and get a ticket you can view, save, or print. My Tickets brings bookings together, with a one-time seat change for the same game and refund requests for eligible bookings.
Bold orange, oversized typography, and scroll driven motion bring the energy of basketball into the experience.