How victor-amili/travel-kulture works
TravelKulture is a Next.js travel-agency website foundation. The visible customer journey starts at the home page, where travelers can explore tours, open tour details and access trip tracking; the booking page currently collects a request and shows a local confirmation rather than creating a booking or taking payment. Separate pages cover reviews, souvenirs, radio and support. Admin pages provide operational entry points, with sampled tour editing backed by Supabase and image uploads signed by a server route for Cloudinary. Several capabilities are README-described foundations; their internal wiring is not established by the sampled source.
Main entry points: app/page.tsx Home · [id]/page.tsx Edit tour · CloudinaryUploader.tsx Image uploader · client.ts Supabase
Components 21
Tour discovery
- Home
app/page.tsx - Tour listing
app/tours/page.tsx - Tour detail
app/tours/[slug]/page.tsx - Demo tours
lib/demo-data.ts
Admin operations
- Admin dashboard
app/admin/page.tsx - Tour management
app/admin/tours/Page.tsx - Edit tour
app/admin/tours/[id]/page.tsx - Create tour
app/admin/tours/new/Page.tsx
Traveler services
- Booking request
app/booking/page.tsx - Trip tracker
app/my-trip/page.tsx - Reviews
app/reviews/page.tsx - Souvenir shop
app/shop/page.tsx - Radio
app/radio/page.tsx - Contact support
app/contact/page.tsx - About
app/about/page.tsx
Platform services
- Supabase
lib/supabase/client.ts - Database schema
database/schema.sql - Image uploader
components/admin/CloudinaryUploader.tsx - Signature route
app/api/cloudinary/signature/route.ts
Other components
- Traveler
- Cloudinary
Connections 20
- Traveler → Home: opens
- Traveler → Tour listing: browses
- Traveler → Tour detail: views
- Traveler → Booking request: submits request
- Traveler → Trip tracker: tracks trip
- Traveler → Reviews: reads
- Traveler → Souvenir shop: visits
- Traveler → Radio: listens
- Traveler → Contact support: contacts
- Home → Tour listing: links to
- Home → Reviews: links to
- Home → Trip tracker: links to
- Home → Demo tours: renders
- Admin dashboard → Supabase: counts records
- Edit tour → Supabase: updates tours
- Edit tour → Supabase: writes gallery
- Edit tour → Image uploader: uses
- Image uploader → Signature route: requests signature
- Signature route → Cloudinary: signs upload
- Image uploader → Cloudinary: uploads image