Studio software

SFSS

2025 · Browser-based screenplay editor, outliner, reports and print studio that keeps every script on the writer's own device · Author, sole developer and publisher

A free screenwriting studio that runs entirely in the browser: industry formatting, outlining, reports, print and peer-to-peer collaboration, with no account and no server.

Open SFSS ↗

SFSS — production still

Notes from the producer

I wrote SFSS because I wanted to write scripts the way I read them — on a properly formatted page — without buying Final Draft or handing a cloud service custody of a draft that is often, for a long time, the only thing a film has. The first commit on 23 December 2025 was, literally, my first commit ever. I set three rules at the start and kept them: no account, no server that ever sees the script, and no build step, so what is in the repository is exactly what runs. Everything lives in the browser, exports go to Final Draft, Fountain, text and JSON, and if you do not trust even that, the Feature Manager will hand you one HTML file that works from a USB stick.

The two features I am fondest of are the ones that refuse something. Collaboration has no server: two writers connect directly and pass a single baton, so there is never a fight over who is typing, and the images you attach to a scene never leave your machine. And the pagination engine is one engine — Page View, print, the reports and the Final Draft export cannot disagree about how long your script is, on Letter or on A4.

I stopped in July 2026, after a two-day push that gave it a test harness, a v2 collaboration protocol and a release regression I can point to, and I am fine with that. It is done, it is free, it is MIT, and it is live. I used coding agents for much of the work and left the commit messages that say so, including the two where they ran out of quota mid-task.

- Matija Radeljak

The story

SFSS opened on 23 December 2025 with a commit message that reads, in full, "inital commit and my first commit ever". The author is Matija Radeljak, a film producer who had spent years reading screenplays in other people's software and paying for the licence that formats them, and who wanted three things it would not give him: no account, no server holding the draft, and nothing between the source code and the running program. Twenty-four commits landed before New Year; by 20 July 2026 there were 53, and the result is a complete writing studio of 14,623 lines of vanilla JavaScript in 30 ES modules and 4,811 lines of CSS, with no bundler, no npm packages and no build step. The only third-party code is a 12-kilobyte WebRTC helper plus locally hosted fonts and icons.

The core is a pagination engine that takes the industry's conventions literally: 12-point Courier at six lines to the inch, a 1.5-inch binding margin, a live text area of six by nine inches, (MORE) and (CONT'D) when a speech breaks over a page, and scene headings that never strand at the bottom. One engine feeds four outputs — Page View, print, the Reports dashboard and the Final Draft export — so a page count means the same thing everywhere, and A4 is handled by emulation: a heavier bottom margin and a narrower right one carry the Letter text block unchanged onto European paper. Around the editor sit a Treatment mode that projects the script into scene cards with synopses, colours and images; a Reports mode that counts pages, eighths, interactions and monologues; a Prepare & Print modal with title pages, watermarks and facing-page or booklet imposition; and import and export for Final Draft, Fountain, plain text and JSON.

Two features are positions rather than conveniences. Collaboration has no server: two writers connect directly over WebRTC, and a single baton decides who may type — the other reads, and anyone on a phone watches. The first version took about eight hours over four sessions and was merged on 26 December 2025 as the repository's first pull request; the v2 protocol of July 2026 rebuilt it as a testable state machine in which exactly one side ever holds the baton, added a 60-second reconnection grace and kept one firm rule — scene images never leave the device that added them, even though the rest of the scene data syncs. The second position is the Feature Manager, which flattens the whole application into one HTML file that opens straight from disk with the network-bound modules stubbed out; the checked-in build is 5.46 megabytes. A script and its editor can travel together on a memory stick.

The commit history is unusually frank about how the code was made. A message from 2 January 2026 records that one coding agent got a session "almost done" and needed help from another to finish. After 11 January the repository went quiet for three months; then July 2026 became a numbered remediation arc. Phase 0+1 built a test harness and swept for cross-site scripting; input, pagination, rendering, storage, the Fountain specification, Final Draft round-trips, authoring polish, collaboration v2 and a "docs truth" pass followed in two days, and two commits labelled as partial work interrupted by quota were left in the record rather than squashed. The release regression of 20 July reports 124 Node tests and 41 browser tests green, a 10,000-word script paginating in about 170 milliseconds and a portable build booting from disk with zero exceptions. The last commit, that evening, is a hotfix for modal regressions.

SFSS is live at sfss.app behind Cloudflare, serving the same 20 July build as the repository, installable as a web app and usable offline; the source is public on GitHub under the MIT licence. Nothing has been committed since, and that is stated plainly: it is feature-complete and shipped, not actively developed. What stays open is what its own documentation admits: scene images and soundtrack links do not travel with Final Draft or Fountain exports, and collaboration relies on WebRTC's transport encryption with no layer of its own. For Aning Film it is a statement of method: the producer who needed the tool built it himself, in the open, put it under a test suite, and stopped when it did the job.

Milestones

  • 2025-12-23 — Repository opened: "inital commit and my first commit ever"
  • 2025-12-26 — Peer-to-peer collaboration with a single baton merged as PR 1
  • 2025-12-29 — Fountain and Final Draft import/export overhaul merged as PR 2
  • 2026-01-04 — Prepare & Print v1: title pages, booklets, watermarks, Letter/A4
  • 2026-01-11 — Feature toggles and the portable single-file generator added
  • 2026-04-19 — Cloudflare Workers hosting configuration added on a side branch
  • 2026-07-19 — Phase 0+1: test harness, XSS sweep, dead code removed
  • 2026-07-20 — Collaboration protocol v2 and end-to-end A4 support
  • 2026-07-20 — Release regression green: 124 Node and 41 browser tests
  • 2026-07-20 — Final hotfix; this 20 July build is what sfss.app serves today

Outcomes

  • Live and free — sfss.app serves the 20 July 2026 build, identical to the repository's last commit, under MIT with no account, paywall or telemetry.
  • 14,623 lines, zero packages — 30 vanilla ES modules and 4,811 lines of CSS with no bundler, no npm dependencies and no build step; open the folder and it runs.
  • Four formats — Reads and writes Final Draft, Fountain, plain text and its own JSON, and registers as the OS file handler for all four.
  • One engine, four outputs — Page View, print, reports and Final Draft export share one pagination engine, and Letter and A4 give identical page counts by design.
  • Tests green on release — The 20 July 2026 regression passed 124 Node tests plus 25 pagination, 9 storage and 7 Final Draft browser tests.
  • 5.46 MB portable file — The Feature Manager flattens the whole app into one HTML file that boots from disk with zero exceptions, collaboration and media stubbed out.

Credits

  • Matija Radeljak — Author, sole developer and publisher
  • Aning Film d.o.o. — Publishing studio, Zagreb
  • Cloudflare — Hosting and edge delivery of sfss.app
  • GitHub — Public MIT source host
  • Fountain — Open screenplay syntax the editor reads and writes, thanked in the app credits

Press & links

Aning Film