Twine is an interactive storytelling platform focusing on reader choice. Typical storytelling adheres to a linear format, walking the reader from point to point, essentially keeping the plot on unalterable rails. Twine allows readers to choose which point in the story they'd like to focus on at any point, providing something of a "choose your adventure" format using hypertext and links.

What is Twine?

Twine is an online interactive storytelling tool that essentially helps users craft hypertext. From their user cookbook site: “The difference between hypertext and a linear story, the kind found in books and magazines, is that it allows the reader to have some measure of control. In other words, the reader has some ability over what they interact with next… Readers navigate hypertexts through clicking on links.” The different story formats and programming languages offered can help users customize to their purposes. The main functionalities are linking, conditional logic, variables, and elements of game programming.

How to use Twine.

Twine is usable online or in their desktop app. The online format automatically saves drafts in your browser – you do not need to make an account.

On your stories page, you can navigate between all your different ongoing drafts. The right side toolbar offers options. Press the green +Story button to create a new board.

Twine homepage with sample story

Some of the primary features you will want to note when you make a new board are highlighted below. 

New and empty board with a single untitled passage

1)    “Test Story”: This is an example board title. The carrot to the right of the title offers additional options:

A blank board with the basic options visible

2)    Text Editing: When editing a passage, there are plenty of options for rich text formatting, and additional tools for linking, logic, hooks, variables, macros, and more. Images below reflect some of the options provided.

Text formatting menu

Analytics table and options for Untitle Passage 1

Information on "Hook" tags

Information for "Macro" tags

3)    Story Format options:

a)     Harlowe

(if: $hasKey)[It looks like the key will open the door.]

(else:)[No way forward!]

b)    SugarCube

<<if $hasKey>>

It looks like the key will open the door.


No way forward!


c)     Snowball

<% if (s.hasKey) { %>

It looks like the key will open the door.

<% } else { %>

No way forward!

<% } %>

d)    Chapbook

[if hasKey]

It looks like the key will open the door.


No way forward!

Twine Resources

If you would like to learn about more ways to get creative with Twine, check out some of these resources below:

About Twine

Twine Tutorials

Join the Twine working group!


Keywords:Twine   Doc ID:124916
Owner:Adam H.Group:University of Illinois School of Information Sciences
Created:2023-03-16 13:34 CDTUpdated:2023-04-04 11:03 CDT
Sites:University of Illinois School of Information Sciences
Feedback:  0   0