Skip to content
screenjson

screenjson-cli

Convert Fountain to ScreenJSON

Convert a .fountain or .spmd file to a valid ScreenJSON document, with language tagging and optional YAML output.

Last updated January 2026

What you need

  • A .fountain or .spmd file.
  • screenjson on 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, and sources.
  • Character cues are normalised and indexed: every unique cue becomes a character in the characters array with a stable UUID; every dialogue and character element references it.
  • Sluglines (INT. HOUSE - DAY) are parsed into structured { context, setting, time } objects.
  • Transitions (CUT TO:, FADE OUT.) are typed as transition elements, not dropped as action.

Next