
Riga Casting runs casting for film, TV and commercials. They needed one place to hold their whole talent pool and make casting decisions with clients - not spreadsheets, email threads and shared drives. We built them a custom Laravel platform: a searchable talent database, a project workflow, and a client voting layer, all behind one admin.
A database built for casting, not just storage
Every actor has a full profile - photos, showreel, physical attributes, languages, experience and notes. The database runs to 115 pages of candidates, so search is the whole point. Casting directors filter across a dozen fields at once - gender, age, height, hair, skin tone, clothing, languages and free-text keywords - and pull a shortlist in seconds, then push the selected candidates straight into a project.

Voice talent, with the samples built in
Voice-over is its own database. Each voice carries multiple audio samples that play inline, so a client can listen through a talent’s range without leaving the page, filter by category and language, and add the ones they like to a project.

Projects, then client voting
Casting directors build a project, define its roles, and add candidates from the database. Then the client takes over. Each project has its own voting space, scoped so a client only ever sees their own project - they vote on candidates and leave comments, and casting watches the results roll up per role. Actors and voice talent each get their own voting flow.
Profiles out as formatted PDFs
Casting decisions leave the tool as documents. Any actor - or a whole selection at once - exports to a PDF built to a fixed layout: photos, key attributes and details arranged the same way every time, ready to send to a client or director. The roster also exports to Excel.

Stack: custom Laravel application, server-rendered with Alpine.js and Tailwind, Sanctum auth, DomPDF for the generated profiles.