# TODO - Decor by Hannah's

## High Priority

### Features
- [ ] Email notifications for booking confirmations/updates
- [ ] Calendar integration for event scheduling
- [ ] Photo upload functionality for gallery (currently manual file placement)
- [ ] Service pricing calculator on catalog page
- [ ] Customer testimonials/reviews section

### Admin Improvements
- [ ] Admin dashboard statistics (total bookings, revenue, upcoming events)
- [ ] Bulk booking status updates
- [ ] Export bookings to CSV/Excel
- [ ] Admin user management (add/remove admin privileges via UI)
- [ ] Booking search and filtering

### Security & Auth
- [ ] Rate limiting on API endpoints
- [ ] CSRF protection for forms
- [ ] Session timeout configuration
- [ ] Password reset flow (via Ory)
- [ ] Two-factor authentication option

## Medium Priority

### UX Improvements
- [ ] Better mobile responsiveness testing
- [ ] Loading states for form submissions
- [ ] Toast notifications instead of alerts
- [ ] Image lazy loading in gallery
- [ ] Booking confirmation page (instead of alert)
- [ ] Service availability calendar on booking page

### Admin Features
- [ ] Edit service details (name, description, price)
- [ ] Add/remove services via admin UI
- [ ] Upload gallery photos via admin panel
- [ ] Customer contact information in admin view
- [ ] Booking notes/internal comments

### Code Quality
- [ ] Add unit tests for handlers
- [ ] Add integration tests for booking flow
- [ ] Error logging to file/service (e.g., Sentry)
- [ ] API documentation
- [ ] Code coverage reporting

## Low Priority

### Nice to Have
- [ ] Dark mode improvements (better color contrast)
- [ ] Print-friendly booking receipts
- [ ] Social media integration (Instagram feed)
- [ ] Blog/news section
- [ ] FAQ page
- [ ] Contact form
- [ ] Google Maps integration for service area
- [ ] Multi-language support

### Performance
- [ ] Image optimization/compression
- [ ] CDN for static assets
- [ ] Database query optimization
- [ ] Caching layer (Redis)
- [ ] Minify CSS/JS

### DevOps
- [ ] CI/CD pipeline setup
- [ ] Automated database backups
- [ ] Staging environment
- [ ] Production deployment guide
- [ ] Monitoring and alerting (uptime, errors)
- [ ] Docker production configuration

## Technical Debt
- [ ] Consolidate duplicate code in handlers
- [ ] Standardize error responses across API
- [ ] Move magic strings to constants
- [ ] Add database indexes for performance
- [ ] Refactor template data structures (use shared base struct)

## Documentation
- [ ] API endpoint documentation
- [ ] Database schema documentation
- [ ] Deployment guide
- [ ] Contributing guidelines
- [ ] User manual for admin panel

## Bugs/Issues
- [ ] None currently known

## Completed ✓
- [x] User authentication with Ory
- [x] Booking system with service options
- [x] Australian address validation
- [x] Admin dashboard with booking management
- [x] Admin authorization and security
- [x] Profile page with user bookings
- [x] Service catalog display
- [x] Photo gallery
- [x] Responsive navigation with drawer
- [x] Dark/light theme toggle
- [x] Database migrations system
- [x] Ory redirect pages with toast notifications
