Last updated:

Screenwriting in Fountain: Concept and Basic Usage


Writing a scenario is usually done under dedicated softwares (Final Draft, CeltX, or the very promising KIT Scenarist for example), or in a generic word processor (Open Office, Google Doc …). You are dependent on the features offered by the software, without much possibility of modification or customization, either because the software doesn’t allow user to implement their own features in simple ways, or because changing their source code is out of reach (the software is not open source, or it is too complicated). If you do not like something in your editing software, there is not much you can do.

To write the rest of my audio saga Alien 2347, I had very specific needs:

  • A dark interface theme, because I write in the evening
  • Colors on the name of the characters
  • An HTML clean export, because I’m using HTML rendering on a prompter tablet while recording actors’ voices.

After having tested multiple specialized software, I still had not found means to satisfy these few requirements. Frustration.

However, while digging the subject, I discovered something that could answer all these desires: Fountain.


The Fountain is a syntax to write scenario, using a simple regular text files.

The idea is powerful: any text file, for example a document created with the notepad, a code editor, a memo etc., can be written in Fountain. Conversely, since Fountain files are simple text documents, they can be created or opened in any text or code editor.

Thus, your data belongs to you fully (they are not saved in a proprietary format, but in the most universal format there is, pure text), which allows a very high level of interoperability. Fountain is also used as an exchange format between the various script writing softwares, which are usually able to import / export in Fountain, but they often do not allow direct editing of these files; we therefore lose a bit of interoperability). Dozens of other applications beyond text editors support and understand Fountain natively (without conversion), as you will see on the list of applications listed. There is also storyboarding apps which supports Fountain format, like StoryBoarder.

For the technical details: Fountain is for writing of scenario what the Markdown is with the writing in HTML: a concise way to define the semantics of your lines (this is a paragraph, this is a dialogue), which will then be rendered by an interpreter in the format of your choice (to PDF, to HTML etc …) .
If you do not know the Markdown, know that it is used more and more to format messages on the web, whether on Slack, Trello, GitHub, Discuss, WordPress … you use it without even -being to know it.

Being pure text and not containing formatting information, this allows the author to focus on what matters most: the content and its semantics (dialogues, description etc …), and not the form (indentations, line breaks etc).
Here’s a video of Big Fish’s screenwriter, which sums up the benefits of this format:


So how do you write in Fountain?

The convention is to put the .fountain extension to these text files instead of .txt. Like that, if you have an editor dedicated to Fountain files, the file will be directly associated to this software.

Then the only thing that changes from a normal text is the syntax.

For example, to write a dialogue, we will write the names of characters in capital letters.

Here are some small examples of code with screenshots, do with the small web app fountain-editor of hiimjosh. We could also have used Write Script In, which works similarly.

Vous connaissez le format Fountain ?

Euh non c'est quoi !

Je vais t'expliquer, c'est facile !

Which will output:

A sequence title with a description of the action?


Raymond et Johnson sont devant la table de contrôle d'un vaisseau spatial.

And in action, with a real-time rendering on the side:

No keyboard shortcuts to remember to change between descriptions and dialogues, you just have to write in capital letters or not. Very convenient !

The Fountain syntax is enriched by a few other elements, for transitions, the title of the script, the author, etc. You can find the list of the available elements on the page dedicated to the syntax. No need to learn everything, you can already do 99% of your scenario with what I showed you above! The screenshot from shown on top of this article shows a more complete example.


Using a universal and accessible format allows to overcome many barriers. You don’t feel locked into a software anymore. This free the imagination.

At this point, you may wonder what is the point of having something so basic. You will understand in the next articles that it is this simplicity which makes possible the development of very advanced functionalities, for the writing, rendering, or the analysis of the scenario.

See you soon, and good writing!

Thanks to Marie for the proofreading!