What you need
- A
.fountainor.spmdfile. screenjsonon your PATH, or Docker.
Convert
screenjson convert -i screenplay.fountain -o screenplay.json
Fountain is auto-detected from the extension. If you’ve renamed the file, force the format:
screenjson convert -i my-script.txt -f fountain -o screenplay.json
Emit YAML instead
Useful when a downstream config system prefers YAML:
screenjson convert -i screenplay.fountain --yaml -o screenplay.yaml
Primary language
If the source is not English, set --lang:
screenjson convert -i screenplay.fountain --lang fr -o screenplay.json
Things to know
- Fountain’s title-page metadata maps directly to ScreenJSON’s root
title,authors, andsources. - Character cues are normalised and indexed: every unique cue becomes a character in the
charactersarray with a stable UUID; every dialogue andcharacterelement references it. - Sluglines (
INT. HOUSE - DAY) are parsed into structured{ context, setting, time }objects. - Transitions (
CUT TO:,FADE OUT.) are typed astransitionelements, not dropped as action.