Web App Guide
Main Navigation
- Dashboard: KPIs and quick actions
- Bookings: calendar/list views, approvals
- Clients: profiles, package balances, history
- Coaches: profile, availability, public link
- Courts: court setup, blocks, public booking toggle
- Reports: payment summaries and trends
- Settings: plan, workspace, org settings
Bookings
Key flows:
- Create booking
- Edit booking
- Approve/reject pending booking
- Mark payment status (`pending`, `paid`, `overdue`)
- Cancel/delete booking
Conflict checks:
- Court overlap blocking
- Coach overlap blocking
- Court block range enforcement
Clients
- Create/edit/delete client
- Phone + email support
- Lesson totals/remaining support
- Lesson/package usage history in related screens
Coaches
- Create/edit/delete coach
- Hourly rate and bio
- Weekly availability ranges
- Public coach booking enablement (plan-dependent)
Courts
- Create/edit/delete court
- Set open/close time and hourly rate
- Create maintenance/event blocks
- Optional public court booking URL
Settings
- Current plan and limits
- Workspace switcher (multi-membership users)
- Availability setup
- Group templates and upcoming groups links
- Notification settings (system-level)
Access Control
UI is permission-aware:
- Sidebar modules
- Quick-action cards
- Stats cards
Actions still enforce backend permissions even if UI is modified.