AIGenerative

Generate character art directly from a script - Story Lab reads the character's description on the page and turns it into visual references the team can react to.

WhyI didn't want this to feel like a generic image generator bolted onto a script. The model reads the page itself - the traits, the wardrobe cues, the tone - so what comes back actually belongs to the story instead of a random prompt.

AIMobile

A future-looking exploration for the Story Lab mobile app - an AI companion that reads with you, surfaces context on demand, and turns the phone into the fastest way to interrogate a script.

WhyMost reading happens on the couch, in a car, between meetings. If the script is in your pocket, the assistant should be too - so I started sketching what a script-aware AI feels like when it lives in your hand instead of behind a desk.

AIChat

Chat across every script in a series at once - ask a question and get an answer grounded in the actual pages, with citations back to the scenes it pulled from.

WhyI kept watching teams reopen the same five scripts to answer the same question. It felt silly. So I designed this as one conversation across the whole series - ask once, get a grounded answer with the scenes it pulled from.

iOSPrototype

Story Lab redesigned for mobile - reading scripts, leaving notes, and checking on a show should feel as easy as opening a messaging app.

WhyI designed this for the in-between moments - the cab ride, the gate, the ten minutes before a stand-up. Reading and reacting to a script should feel as light as texting, not like opening a work app.

AIInsights

AI-generated insights for a single script - themes, character arcs, pacing, and standout beats surfaced from the page so readers can skim a hundred pages in minutes.

WhyStory readers spend hours pulling threads out of a script by hand. I leaned on AI to do that part for them - surface the themes and arcs up front, then let them tap straight into the page so they can see for themselves where it came from.

iOSNative

A second pass at the native iOS app - faster navigation, cleaner reading view, and quick gestures for the actions people use most.

WhyThe first prototype proved the shape was right. This pass was about ruthlessly shortening the path - open a script, jump to the scene, leave a note - so it stops feeling like a tool and starts feeling like a habit.

AICompare

Open two drafts of a script next to each other and step through the changes scene by scene - synced scrolling, highlighted edits, and quick jumps between revisions.

WhyTracking changes across script revisions is famously painful - redlines everywhere, intent nowhere. I designed compare around the question people actually ask: what changed and why does it matter, not which commas moved.

Mobile

The same notes system rebuilt for the phone - one-handed reading, tap to highlight, and quick reactions for the way most people actually read scripts.

WhyMost people don't read scripts at a desk. I made notes a first-class action on mobile - one-tap highlights, quick reactions - because the way notes get treated on the phone says a lot about whether people will actually leave them.

Craft

Notes that live directly on the script - highlight a line, leave a comment, and share the thread with the room without ever leaving the page.

WhyNotes were living in email, decks, PDFs - everywhere except the script. I pulled them back onto the page so every reaction stays tied to the exact line that triggered it. Context is the whole point of a note.

Compare

An LLM-written summary of what actually changed between two drafts - tone, structure, and character intent - so readers stop hunting through redlines.

WhyI asked the LLM to do what a good story editor does when you ask 'what changed?' - skip the line-by-line, tell me the shift in tone, structure, and character intent. That's the version of compare people actually want.

Behind the pixels

A look at the rough work along the way.

Swipe to browse - tap to expand.