How kushi8811/il-vespro works
Il Vespro is a restaurant website: visitors explore the restaurant, cuisine, menu and gallery, then can submit a table booking. The booking page writes to Supabase and then calls the booking API, which sends owner and customer emails. Other routes and shared layout provide the restaurant’s informational and contact experience. The booking flow and several page implementations were sampled; other listed routes are represented at their exact route paths, with no unsampled interactions inferred.
Main entry points: app/page.js Home experience · layout.js Site layout · booking/page.js Booking form · about/page.js Story and location
Components 20
Restaurant website
- Home experience
app/page.js - Story and location
app/about/page.js - Menu
app/menu/page.js - Gallery
app/gallery/page.js - Home sections
app/_components/EssenceOfIlVespro.js - Hero
app/_components/Hero.js - Image slider
app/_components/Slider.js - Contact form
app/_components/ContactCard.js - Gallery video
app/_components/Video.js - Google Maps
Reservations
- Booking form
app/booking/page.js - Booking email handler
app/api/bookings/route.js - Supabase bookings
- Gmail SMTP
Shared experience
- Site layout
app/layout.js - Header navigation
app/_components/Header.js - Footer and contact
app/_components/Footer.js - Cookie banner
app/_components/CookieBanner.js - Event popup
app/_components/PopEvent.js
Other components
- Visitor
Connections 19
- Visitor → Home experience: visits
- Visitor → Story and location: visits
- Visitor → Menu: visits
- Visitor → Gallery: visits
- Visitor → Booking form: submits booking
- Site layout → Header navigation: renders
- Site layout → Footer and contact: renders
- Site layout → Cookie banner: renders
- Site layout → Event popup: renders
- Site layout → Home experience: renders children
- Home experience → Hero: renders
- Home experience → Home sections: renders
- Home experience → Image slider: renders
- Home experience → Contact form: renders
- Booking form → Supabase bookings: inserts booking
- Booking form → Booking email handler: POST booking
- Booking email handler → Gmail SMTP: sends emails
- Gallery → Gallery video: renders
- Story and location → Google Maps: embeds map