SPINE IN / Script Editor Spec

Script Editor Feature Tracker

A complete inventory of every feature a screenwriter expects from a Final-Draft-style script editor — formatting, page markers, scene heading auto-complete, transitions, dual dialogue, lyrics, notes, import/export, beat integration, and collaboration. Each item is colour-coded: green when complete, orange when partial, and red when not yet started.

Total Features

92

Complete (Green)

73

Partial (Orange)

5

Not Started (Red)

14

Overall Progress

82%

Completion Key

Complete — feature is wired, verified, and behaves to industry spec.

Partial — an MVP surface or first-pass integration exists but needs deeper polish.

Not Started — feature is planned but not yet implemented.

Industry-Standard Formatting

Courier 12-pt typography, US-Letter page, 1" body margins, page-body-safe line fitting, and the standard indents for every element type — matching what Final Draft, Movie Magic, and Highland export.

Courier 12-pt font stack

Every screenplay element renders in Courier 12-pt (or Courier Prime / Courier New fallback).

Complete100%

lib/pagination.ts: FONT_SIZE_PX = 16, CHAR_WIDTH_PX = 9.6

US-Letter page geometry

816 × 1056 px page with 1" left, right, top, and bottom margins.

Complete100%

lib/pagination.ts: PAGE_WIDTH_PX, MARGIN_*

Page-body-safe line budget

Pages wrap at the number of 12-pt Courier lines that fit inside the rendered body, preserving the 1" bottom margin.

Complete100%

lib/pagination.ts: LINES_PER_PAGE derives from CONTENT_HEIGHT_PX / LINE_HEIGHT_PX

Action indent 1.0" from left

Action lines start 1.0" from the left edge, full content width.

Complete100%

lib/pagination.ts: LEFT_OFFSET_CH.action = 0, WIDTH_CH.action = 65

Character indent 3.7" from left

Character cues start 3.7" from the left edge and run to the 7.5" right edge.

Complete100%

lib/pagination.ts: LEFT_OFFSET_CH.character = 27, WIDTH_CH.character = 38

Parenthetical indent 2.9" from left

Parentheticals start 2.9" from the left edge and run to 6.5".

Complete100%

lib/pagination.ts: LEFT_OFFSET_CH.parenthetical = 19, WIDTH_CH.parenthetical = 36

Dialogue indent 2.5" from left

Dialogue starts 2.5" from the left edge and runs to 6.5".

Complete100%

lib/pagination.ts: LEFT_OFFSET_CH.dialogue = 15, WIDTH_CH.dialogue = 40

Transition right-aligned

Transitions (CUT TO:, FADE OUT., etc.) are right-aligned in the content area.

Complete100%

components/editor/page-element.tsx: TYPE_STYLES.transition

Scene heading auto-uppercased

INT./EXT. sluglines are automatically uppercased on render.

Complete100%

page-element.tsx TYPE_STYLES.scene-heading

Character cue auto-uppercased

Character names are automatically uppercased on render.

Complete100%

Single source of truth for indents (page, screen, export)

All editors and the printable export read LEFT_OFFSET_CH / WIDTH_CH from one file.

Complete100%

lib/pagination.ts

Complete (73)

  • Courier 12-pt font stack
  • US-Letter page geometry
  • Page-body-safe line budget
  • Action indent 1.0" from left
  • Character indent 3.7" from left
  • Parenthetical indent 2.9" from left
  • Dialogue indent 2.5" from left
  • Transition right-aligned
  • Scene heading auto-uppercased
  • Character cue auto-uppercased
  • Single source of truth for indents (page, screen, export)
  • Auto FADE IN: on page 1 (right-aligned)
  • … and 61 more

Partial (5)

  • Auto-insert (MORE) / (CONT'D) at exact page split
  • Dual dialogue (side-by-side speakers)
  • Distraction-free (typewriter) mode
  • Version history (snapshot per save)
  • Bilingual (Hindi + English) script

Not Started (14)

  • Side-by-side bilingual lyric block
  • Drag-to-reorder elements
  • Spell check (English + Hindi)
  • Index cards (drag-to-reorder beats)
  • Focus mode (fade non-active scenes)
  • PDF import (via OCR)
  • Final Draft (.fdx) export
  • Direct PDF export (server-side, layout-perfect)
  • Color-coded revisions (blue, pink, yellow, green, goldenrod)
  • Compare two drafts side-by-side
  • Scene locking (prevent edits)
  • Real-time multi-user editing
  • … and 2 more