Overview
Laravel backend API powering the CVD video resume mobile app on iOS and Android. Built for Osky Interactive (Australia). Handles payment processing, media streaming, store receipt validation, and AI-powered script analysis for video resume coaching. I built and maintain the full backend, including the admin panel and all external service integrations.
Challenge
The backend needed to orchestrate multiple external services: Stripe for web payments, Apple App Store receipt validation for iOS subscriptions, AI providers (Mistral and OpenAI) for video resume coaching features, and media streaming for video delivery. Each integration has its own authentication, webhook handling, and error recovery patterns. The API also needed to support social login alongside traditional authentication for the mobile app.
Approach
Built on Laravel 10 with Vue.js 3 and Inertia.js for the admin panel. Used Laravel Cashier for Stripe subscription management and built custom App Store receipt validation for iOS in-app purchases. Integrated Mistral and OpenAI through a unified AI service layer so the app can switch providers or add fallback logic. Used Laravel Sanctum for API token authentication and Socialite for social login providers.
Tech Stack
| Layer | Technology |
|---|---|
| Backend | Laravel 10 |
| Admin Panel | Vue.js 3 + Inertia.js |
| Payments | Stripe + Laravel Cashier |
| Auth | Laravel Sanctum + Socialite |
| AI | Mistral + OpenAI |
| Database | MySQL |
Key Implementation Details
- Payment orchestration: Stripe via Laravel Cashier for web subscriptions, custom App Store Server API integration for iOS receipt validation and subscription lifecycle management
- AI-powered analysis of video resume scripts, providing feedback on content structure and professional presentation via Mistral and OpenAI with automatic provider failover
- Media streaming API for video delivery to the mobile app
- Social authentication via Socialite alongside token-based API auth via Sanctum
- Admin panel built with Vue.js 3 and Inertia.js for managing users, subscriptions, and content
Outcome
Deployed and powering the CVD app on iOS (4.5/5 stars on the App Store) and Google Play. The admin panel enables the team to manage users, subscriptions, and content without direct database access.