Bull OTT is a subscription‑based over‑the‑top video streaming platform, built with a Laravel back end (for content management, user administration and API delivery) and a native Android client in core Java (for media playback, UI rendering, and offline downloads). It offers user authentication, subscription billing, playlist management, video-on-demand and live streaming, all delivered via secure
Client
User Management
Registration, login/logout, profile editing
JWT‑based authentication for API calls
Subscription & Billing
Plans management (monthly/annual tiers)
Integration with payment gateways (Stripe, Razorpay)
Webhooks to update subscription status
Content Management
Admin dashboard in Laravel to upload, tag, categorize videos
Dynamic playlist and channel creation
Metadata (titles, descriptions, thumbnails) management
Streaming & Playback
HLS/DASH support for adaptive bitrate streaming
ExoPlayer integration on Android for smooth playback
DRM support (Widevine) for protected content
Offline Downloads
Secure download of encrypted video segments via Android WorkManager
Download queue, pause/resume, cache encryption
Push Notifications & Analytics
FCM notifications for new content and subscription alerts
Event tracking (video views, session length) sent back to Laravel via API
Search & Recommendations
Full‑text search on titles and descriptions (Elasticsearch or Laravel Scout)
Basic recommendation engine based on watch history
Scalability: Horizontally scalable API servers behind a load balancer
Security: HTTPS everywhere, token encryption at rest, OWASP‑hardened
Performance: CDN for video assets (Cloudflare, AWS CloudFront)
Monitoring: Logs (ELK stack), uptime alerts (Prometheus/Grafana)
Layer | Technology / Library |
---|---|
Backend Framework | Laravel (PHP 8.x) |
Database | MySQL / MariaDB |
Cache & Queues | Redis (cache, session store, queues) |
API & Authentication | Laravel Sanctum / JWT |
Media Storage & CDN | AWS S3 + CloudFront (or equivalent) |
Admin UI | Blade + Tailwind CSS |
Search | Laravel Scout + Elasticsearch |
Payment Gateway | Stripe / Razorpay SDKs |
Push Notifications | Firebase Cloud Messaging (FCM) |
Android Client | Java (Android SDK 31+) |
Media Playback | ExoPlayer |
Networking (Android) | Retrofit + OkHttp |
Offline Tasks | WorkManager |
Dependency Injection | Dagger 2 / Hilt |
Image Loading | Glide / Picasso |
DRM | Widevine Modular DRM |
CI/CD | GitHub Actions / Bitrise |
Monitoring | Sentry (crash reporting) |
Your email address will not be published. Required fields are marked *