Inspiration

Film production runs on a document almost no one outside the industry has heard of: the breakdown. Before a single frame is shot, a first assistant director reads the entire script and tags every scene cast, props, wardrobe, vehicles, stunts, VFX, day or night, interior or exterior and then reorganizes those scenes into an efficient shooting schedule, because shooting in script order is enormously expensive. This is two to four days of tedious, high-stakes manual work on every production, and almost none of it is automated. We wanted to see if an AI agent could do the first draft of it in minutes.

What it does

Callsheet turns a screenplay PDF into a complete, production-ready plan:

  • Automated scene breakdown. It parses the screenplay into scenes and uses Google Gemini to tag each one with cast, props, wardrobe, vehicles, stunts, special effects, and VFX measured in industry-standard page eighths, with INT/EXT and time of day. Every tag is editable, so the AI assists the professional rather than replacing their judgment.
  • Optimized shooting schedule. It regroups scenes by location and lighting into efficient shoot days, respecting day/night constraints and consolidating same-location scenes from across the script. On our test screenplay it condensed nine script-order days into five four days saved and generated a standard Day Out of Days grid.
  • Production risk flags. It analyzes the schedule and surfaces budget and safety risks stunts needing a coordinator and insurance, expensive night exteriors, vehicles required across separated shoot days each tied to specific scenes with a recommendation.
  • Producer-ready export. Everything exports to a formatted PDF and a CSV, ready to hand to a production office.

How we built it

  • AI: Google Gemini, via the official google-genai SDK, called at runtime for the scene breakdown, the scheduling rationale, and the risk analysis.
  • Built and deployed on Replit: developed with Replit Agent and deployed live on Replit's platform.
  • Backend: Python, with a PDF-parsing pipeline (pdfplumber), a deterministic scheduling engine, and PostgreSQL for persistence.
  • Frontend: a dense, dark, production-software-style interface in TypeScript/React.
  • Reports: ReportLab for the PDF, plus CSV export.

Challenges we ran into

Real screenplays are messy. The same location shows up under slightly different headings ("RELAY TOWER" vs "RELAY TOWER - PLATFORM"), and the same character appears as both "MARA" and "MARA VOSS." A naive scheduler treats these as different places and different people and saves nothing our first version turned nine scenes into nine separate shoot days. We also hit a persistence bug where uploaded scripts were held only in memory and vanished on restart, and a deployment issue where the PDF export worked locally but failed in production because of a hardcoded Python path. Each of these had to be traced and fixed before the app was trustworthy.

Accomplishments that we're proud of

We built a genuinely complete product, not a proof of concept upload to breakdown to schedule to risk analysis to exportable report, all working on a live deployment. The scheduler doesn't just list scenes; it makes real 1st-AD decisions, consolidating locations and minimizing scattered actor call days. And the risk flags are grounded in the actual tagged data, so they surface real stunt, night-exterior, and vehicle-continuity risks and don't invent risks that aren't there.

What we learned

The hardest and most valuable part wasn't calling the AI it was making its output trustworthy. We built a normalization layer that reconciles sub-locations and character-name variants before scheduling, which is what makes the day-consolidation and the Day Out of Days grid actually correct. And we learned to ground the risk analysis in the tagged data rather than leaving it entirely to the model. The result is a tool that behaves like it understands production, not just language.

What's next for Callsheet

Support for more screenplay formats and longer feature scripts; a fuller stripboard view that a production office could rearrange by hand; integration with call-sheet generation so the daily paperwork flows straight from the schedule; and multi-user support so a whole production team can work from the same breakdown.

Built With

Share this project:

Updates

Submission history