Example of a Twine project.


Twine is “an open-source tool for telling interactive, nonlinear stories.”

It allows users to create a visual novel or other video games through its story builder. The program uses a story builder interface and requires users to learn basic coding to create pathways.

The limit to what you want to create is set by only your willingness to learn a new skill and our ability to help you break Twine the right way.

What does it do?

Twine provides an easy way to create your own digital stories. You can use the blocks provided to build a story and create paths using simple coding.

An example of Twine's Story Builder with a wireframe of a short story. There are two main branching paths that lead to more options.
An example of a simple Twine storyboard.

Why this tool?

Twine is best used to tell a story. Use it to develop a narrative with branching paths. You can also include media and interactive components to engage the audience.

Some of our favorite stories produced by Twine include:
Cat Petting Simulator– by neongray
Pet some cats virtually!

Temple of No– by Crows Crows Crows
Play as one of three adventurers searching for the Map that Sees All Things that Ever Have Been or Will Be (but in map form). I recommend playing as the Frog.

Depression Quest – by Zoe Quinn, Patrick Lindsey, and Isaac Schankler **TW** Depression Quest deals with themes of depression and suicide. If you are struggling, do not play this game and instead consult the National Suicide Prevention Hotline or other resources provided by Depression Quest’s developers.

Getting Started

You will need:

  • To download Twine. The online version will not save your work.
  • Web accessible media files or upload your own with Sites(link)
  • A project wireframe
  • Basic coding knowledge


  • To create complex narratives, you need to know basic coding. Refer to a guide for the main language, Harlowe, or use this cheat sheet for basic HTML and other shortcuts.
  • Twine supports many coding languages, so you may need to learn more to create a certain effect OR operate within the limitations of the chosen language.
  • Media is incorporated through links, so you cannot drag and drop files into your story. Plan ahead to make sure your media fits in.


Twine is text based editor. You will need to know how to write basic code and use Harlowe to create different effects. For example, this sample page of the Twine editor transforms text

The text editor for Twine, showing different examples of code to change the text and font.
An example of a Twine passage marked up with sample text in different styles and fonts.

…into this public Twine page with a variety of fonts! You can use Harlowe and Twine markups to format your story through text.

To learn Twine, you can use Allison Parrish’s tutorial or visit Dan Cox’s YouTube series on the topic. His series has around 30 videos on different aspects of Twine. Here, we have highlighted three videos. They are:

A playlist of videos that will help you to learn Twine.


More reference material to help you learn Twine.

  • Twine Wiki– A collection of documentation for different versions of Twine and coding languages used by Twine
  • Twine 2 Guide– A text tutorial introducing you to Twine 2
  • Harlowe Documentation– Documentation for the Harlowe language

Twine Cheat Sheet