Commit Graph

12 Commits

Author SHA1 Message Date
Ivan
cdf6e8ebe6 feat(bookings): add calendar UI with booking creation
- Add TimeSlot component with available/booked visual states
- Add BookingCalendar component with date navigation and court columns
- Add BookingDialog for creating bookings and viewing/cancelling existing ones
- Add bookings page with calendar integration
- Fix sidebar navigation paths for route group structure

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:50:22 +00:00
Ivan
ef21748191 feat(api): add bookings CRUD and payment endpoints
- Add bookings list/create API with filters (siteId, date, status)
- Add booking detail, update, and delete endpoints
- Add payment processing endpoint with transaction support
- Add clients list/search and create API
- Implement membership discounts (free hours and percentage)
- Validate requests with Zod schemas from shared package
- Include Spanish error messages

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:44:54 +00:00
Ivan
d3413c727f feat(api): add courts and availability endpoints
Add REST API endpoints for court management and availability:
- GET/POST /api/courts for listing and creating courts
- GET/PUT/DELETE /api/courts/[id] for single court operations
- GET /api/courts/[id]/availability for time slot availability
- GET /api/sites for listing organization sites

Features include organization-based filtering, role-based access control,
premium pricing for evening/weekend slots, and booking conflict detection.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:38:13 +00:00
Ivan
fd28bf67d8 feat(layout): add admin panel layout with sidebar and header
- Add Sidebar component with navigation items (dashboard, bookings, tournaments, pos, clients, memberships, reports, settings)
- Add Header component with SiteSwitcher and user info/logout
- Add SiteSwitcher component for SUPER_ADMIN multi-site selection
- Add admin layout wrapper with AuthProvider
- Add placeholder Dashboard page

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:30:25 +00:00
Ivan
d1cc0c0b58 feat(ui): add shadcn/ui base components
- Add clsx, tailwind-merge, class-variance-authority dependencies
- Add Radix UI primitives (dialog, dropdown-menu, label, select, tabs, toast, slot)
- Add lucide-react for icons
- Create components.json for shadcn/ui configuration
- Create lib/utils.ts with cn(), formatCurrency(), formatDate(), formatTime()
- Create Button component with variants (default, destructive, outline, secondary, ghost, link, accent)
- Create Input component with focus ring styling
- Create Card components (Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:26:25 +00:00
Ivan
a7284925e6 feat(auth): add NextAuth.js with credentials provider
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:24:07 +00:00
Ivan
981783babb feat(db): add Prisma schema with all models
Configure Prisma ORM with PostgreSQL database schema including:
- Organization, Site, Court models for multi-tenancy
- User with role-based access and Client for customers
- Booking and Payment models for reservations
- MembershipPlan and Membership for subscriptions
- Product, Sale, SaleItem, CashRegister for POS
- Tournament, TournamentInscription, Match for competitions
- All necessary enums, relations, indexes, and cascading deletes
- Prisma client singleton for Next.js

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:17:02 +00:00
Ivan
b042e14fc7 feat(shared): add types and Zod validations
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:15:04 +00:00
Ivan
039c17352b feat(web): add Next.js 14 app with Tailwind CSS
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:10:02 +00:00
Ivan
a5a68cc54d chore: initialize monorepo with Turborepo and pnpm
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:08:36 +00:00
Ivan
8dbd20950e docs: add detailed implementation plan
Comprehensive task-by-task plan covering:
- Phase 1: Project foundation (Turborepo, Next.js, Prisma, Auth)
- Phase 2: UI components (shadcn/ui, layouts)
- Phase 3: Bookings module (core functionality)
- Phase 4: POS, Tournaments, Memberships
- Phase 5: Dashboard and Reports
- Phase 6: Mobile app (React Native/Expo)

Each task includes exact file paths, complete code, and commit messages.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:06:35 +00:00
Ivan
aa418b7872 docs: add Padel Pro system design document
Complete design specification including:
- Multi-site architecture for padel club management
- Booking system with client app and admin panel
- Point of sale (POS) with inventory
- Tournaments and leagues module
- Membership plans with benefits
- Full database schema (Prisma)
- UI/UX guidelines and color palette
- Project structure (monorepo with Turborepo)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 04:19:11 +00:00