Technology
Implementation notes
MVP, deployed to production. Chosen so payments and booking integrations attach to the existing offer lifecycle rather than replacing it.
Stack
- Next.js
- App Router — customer wizard and ops dashboard
- TypeScript
- Shared types across UI and Convex functions
- Tailwind CSS
- Layout and component styling
- Convex
- Database, auth, file storage, real-time subscriptions
- Vercel
- Production hosting and preview deployments
Boundaries
Request├─ TripDetails (wizard capture)├─ Messages[]├─ Documents[]└─ Offer└─ status: draft | sent | accepted | closedAuth: customer | agent | adminRLS: row access by role + assignment