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

You don't need to write any code to create a simple story with Twine, but you can extend your stories with variables, conditional logic, images, CSS, and JavaScript when you're ready.

Twine publishes directly to HTML, so you can post your work nearly anywhere. Anything you create with it is completely free to use any way you like, including for commercial purposes.

Twine was originally created by Chris Klimas in 2009 and is now maintained by a whole bunch of people at several different repositories.

Editing a story in Twine 1.4.
A bird's-eye view of a story map in Twine 1.4.
The story list in Twine 2.0.
Editing a story in Twine 2.0.

Twine has been used to create hundreds of works. Here's a sample:

Refresh Works

To have your work listed here, add it to the IFDB.

A new tool has emerged that empowers just about anyone to create a game. It's called Twine. It's extremely easy to use, and it has already given rise to a lively and diverse development scene.

Carolyn Petit, Gamespot

The simple beauty of Twine is this: if you can type words and occasionally put brackets around some of those words, you can make a Twine game.

Kitty Horrorshow

If you're interested in making interactive fiction then there's no better place to start than Twine. It's possibly the simplest game making tool available, it will take you mere minutes to get started, and it has a wonderfully simple visual editor.

Richard Perrin

And aside from being free, it's really not programming at all — if you can write a story, you can make a Twine game.

Anna Anthropy

Twine is the closest we've come to a blank page. It binds itself and it can bind itself along an infinite number of spines extending in any direction.

Porpentine

@twinethreads is the official Twitter account for Twine, with news, interesting links, and new works.

If you have a link you'd like us to share, tweet at us to let us know!