Reserva is a service-based appointment booking and scheduling web application designed to help clients book services and vendors manage their time using a structured, calendar-driven workflow.
The app focuses on real-world booking flows, clean UX decisions, and scalable frontend architecture — similar to systems used by salons, consultants, clinics, and freelancers.
🔗 Live Demo: https://reserva-kappa.vercel.app/
📦 Repository: https://github.com/ojaraa/reserva
Many small service-based businesses struggle with:
- Manual booking via WhatsApp or phone calls
- Missed appointments and scheduling conflicts
- Poor visibility of upcoming bookings
Reserva aims to solve this by providing:
- A structured booking flow for clients
- Clear service and availability management for vendors
- A dashboard-style experience that can scale into a full SaaS product
- Browse available service providers (vendors)
- View vendor profiles and offered services
- Book appointments based on selected services
- View upcoming appointments in a client dashboard and calendar
- List services offered with relevant details
- View incoming and upcoming bookings
- Manage bookings on calendar
- Manage availability (conceptual flow implemented)
- Access a vendor-specific dashboard
- Role-based UI separation (Client vs Vendor)
- Responsive, mobile-friendly layout
- Clean navigation and booking flow
- Deployed production build on Vercel
- Framework: React, TypeScript, Firebase Auth.
- Styling: Tailwind CSS + ShadCN UI
- Routing: App-based routing for dashboard-style navigation
- Deployment: Vercel
The project is intentionally frontend-focused, emphasizing data flow, UI state, and real product structure over mock-only UI screens.