Cast Zone is a casting platform that brings actors, agencies, and casting calls together in one mobile app. I delivered the first release as a freelance project: the Flutter client and the PHP/MySQL REST API behind it.
The problem
The product needed one place where actors keep their profile, photos, and videos up to date, find casting calls, and apply, while agencies publish projects and review the applications they receive.
Scope of my work
- Mobile client: Flutter and Dart, about 210 Dart files; I wrote 118 of the 170 commits in the mobile repository.
- Backend: a custom PHP REST API on MySQL with 86 routes; all API commits are mine.
- Release: the first version was published on the App Store and Google Play in November 2024.
Later 2.x versions of the app were developed by the client, so the current store version also contains work that is not mine.
Main capabilities
- Email and Google sign-in, email verification, and password recovery
- Actor profiles with experience, photos, and videos
- User search and filtering
- Casting calls and the application flow
- Agency and project records
- Video lessons with watch progress
- Premium membership and purchase flows
Architecture
The client uses BLoC/Cubit for state management and Dio for networking, with Firebase handling authentication. The API exposes resource-based REST endpoints for profiles, media, casting calls, applications, lessons, and memberships, and stores its data in MySQL.