Goal: an organised, fast and reliable platform.
- Speed: Redis for cache, sessions and queues; database indexing; eager loading to avoid N+1; pagination; a CDN for images and video.
- Video: hosted on a dedicated service (Bunny Stream / Cloudflare Stream / S3 + CloudFront), not the main server.
- Heavy background work (queues): notifications, Sheets sync, PDF generation and AI analysis, monitored with Laravel Horizon.
- Scalability: split services when needed, read from a replica.
- Monitoring: Sentry for errors, Laravel Telescope/Pulse for development and performance, and uptime alerts.
- Quality: automated tests (Pest/PHPUnit) for subscription and payment paths, CI/CD, and a staging environment.
- Accessibility: good colour contrast, screen-reader support and scalable text size.
Definition of done
A feature is done when it works, is tested on the critical path, has a permission test, is documented here, and has been reviewed on mobile in both languages.