Divine Blizz - Project Documentation
Welcome to the documentation for the backend systems built using PHP, Mezzio, and Swoole, deployed on AWS ECS (Fargate). This documentation provides information for developers and maintainers about the architecture, modules, APIs, and internal workflows powering the Divine Blizz application.
About This Project
This backend powers multiple modules of the Divine Blizz mobile application, including:
- 📖 Inbuilt Catholic Bible (verse-by-verse translation, progress indicator, audio Bible)
- 🎧 Bible In a Year podcast by Fr. Daniel Poovannathil
- 🌹 Rosary module (Malayalam, English, Hindi with playback speed)
- 🎥 Handpicked Catholic videos
- 📜 Articles
- 📡 Live Radio Stations
- Holy Masses, confessions, and adorations.
- 💬 Chat UI
- ⏬ Download support for offline Bible chapters
The backend is designed for high performance, asynchronous processing, and horizontal scalability.
Technology Stack
Backend
- PHP 8+
- Mezzio Framework
- Swoole / OpenSwoole
- Doctrine ORM with multiple entity managers
- Redis (caching, pooling, broadcasting)
- MySQL
Infrastructure
- AWS ECS Fargate
- AWS Application Load Balancer
- AWS ElastiCache Redis
- AWS S3
- AWS CloudFront
- AWS Route53
- Bitbucket Repositories and Pipelines
Clients
- Android app (Java)
- PHP-based clients
- Internal ministry and trust tools
Key Features
Media Streaming
- Radio streaming
- Bible audio streaming
- Playback speed support (in app)
Content Delivery
- Redis caching for Bible chapters
- On-demand chapter fetching or pre-stored chapters
- Optimized for multiple simultaneous requests per user
Coroutine Architecture
Using Swoole coroutines provides: - Low CPU usage - No warm-up delays - Redis and MySQL connection pools - Efficient asynchronous operations
WebSocket Infrastructure
- Concurrent client connections
- Redis-based broadcast channels
- Reconnection handling
- Cleanup logic for stale connections
Documentation Modules
This documentation includes:
- System architecture
- API endpoints
- Routing and middleware pipelines
- Redis connection pools
- Doctrine entity manager pools
- WebSocket server
- Coroutines and performance tuning
- Deployment architecture (ECS / Fargate)
- CI/CD with Bitbucket Pipelines
- S3 and CloudFront setup for documentation hosting
- Email infrastructure over Postfix and Dovecot
- DST handling for Mass timings
- UPI payment integration
Documentation Access
The documentation is hosted at: