AI-native product design and complex domain modeling
Dramaturge
A writer's platform that turns a manuscript into data-driven story analysis: character dossiers, timelines, and structure maps.
- Role
- Sole engineer, designer, and operator
- Year
- 2026
- Status
- In Development
- Site
- dramaturge.io
- React 19 / Vite / TypeScript
- Python / FastAPI
- Gemini 3 Flash (extraction)
- Nano Banana 2 (imagery) / Lyria 3 (music)
- Neon PostgreSQL
- Stripe / Statsig
- AWS CDK / Caddy on EC2
621 backend + 240 frontend
Automated tests passing
2026-07-03 · CI (pytest + vitest)
Challenge
Writers analyze their work by hand: who appears when, where scenes happen, how the structure holds. Dramaturge tests whether an LLM can do that analysis as the product surface itself. The catch is hallucination: models invent characters and miss minor ones, so the design must make AI output trustworthy without pretending it is perfect.
Process
An immutable “story form” (novel, stage play, feature screenplay, and five others) is a first-class domain concept that conditions all ten analysis lenses, among them a scene timeline, character atlas, Hero’s Journey mapper, stakes analyzer, story-structure engine, and a blocking board only for stage and screen. Gemini 3 Flash extracts in structured JSON mode, validated by typed schemas with fuzzy deduplication. I built a dedicated human-correction UI around the model’s documented failure rates; it treats AI output as a draft to confirm.
The two-tier query bar answers about 90 percent of structured queries with pattern matching in under 100 milliseconds, falling through to Gemini with cached project context only when needed. Extraction uses an optimistic “silent swap”: client-side regex highlights proper nouns instantly, then crossfades to AI-validated entities as results stream in. A hard monthly-budget circuit breaker returns a 503 at the ceiling, and I ran every write endpoint through a dedicated authorization-hardening pass. The product also generates charcoal-sketch character art and scene music with Nano Banana 2 and Lyria 3.
Result
Deployed to production at dramaturge.io, with 621 backend and 240 frontend tests passing after a full React frontend rebuild. Pre-launch, no real users yet; music generation ships as an honest coming-soon until it is wired end-to-end in the UI. It is the portfolio’s deepest example of AI output as the primary product surface.