Website Review
What is Twine?
Twine is a free, open-source tool for building interactive, nonlinear stories. You assemble a story as a set of linked passages, and Twine publishes the result as a single HTML file you can post almost anywhere. The page states that no coding is required for a simple story, but you can add variables, conditional logic, images, CSS, and JavaScript as your ambitions grow. It also says anything you create with it is free to use however you like, including commercially.
What that means in practice
- Nonlinear by default. Instead of one linear document, you write branching passages and connect them. This suits choose-your-own-adventure stories, dialogue-heavy games, training scenarios, and exploratory essays.
- A low floor, a high ceiling. You can start by clicking passages together and only later learn macros and styling. The trade-off is that the simple version looks simple; polish comes from the story format and your own CSS.
- HTML output. A finished story is a web page, so it can live on a personal site, an itch.io page, or a school intranet without a special player.
Story formats are the real decision
Twine's page describes story formats as being "like game engines": they determine which features you get and how you write code. Four are built in — Chapbook, Harlowe, Snowman, and SugarCube — and each has its own online guide. This is the choice that will shape your project most, so make it early rather than after writing 40 passages.
| If you want… | Lean toward |
|---|---|
| A gentle start with readable, writer-friendly syntax | Harlowe or Chapbook |
| Fine control, custom styling, and a large body of existing examples | SugarCube |
| To write your own JavaScript and treat Twine as a shell | Snowman |
The page points to the Twine Cookbook for help choosing a format and for worked examples of common tasks, and to the Twine Reference for learning the interface itself.
Ways to run it
You can download the desktop app or use it in your browser. The desktop app keeps your project files on your own machine, which is easier to back up and version; the browser version is convenient on a shared or locked-down computer, but you should export your work regularly.
Where to get help
The Interactive Fiction Community Forum and the Twine Discord are the two named places for questions and feedback. Both are worth joining before you get stuck, since answers arrive faster than in a search engine.
A concrete first step
Pick a story format before you write anything: skim the Cookbook's comparison, then open the guide for the one that matches your table row above. Build a three-passage story — a start, a choice, and two endings — and publish it to HTML. That small loop teaches you the passage-linking model, the publish step, and whether your chosen format's syntax feels comfortable, all in under an hour.
Cost and support
Twine itself is open source and free to use, and your finished work carries no restrictions from the tool. If you want to support it, the page mentions Chris Klimas's Patreon and donations to the Interactive Fiction Technology Foundation, a registered nonprofit, as well as non-financial help such as answering questions, contributing to the Cookbook, fixing bugs, or translating the interface. Individual story format developers may also accept donations.
How do I create a simple interactive story with Twine without coding?
Twine is built for exactly this: you write passages of text, link them together, and it produces a playable story in a browser. No programming is required for a basic branching narrative.
The basic loop
- Create a new story in the Twine editor (desktop app or in-browser).
- Write a passage of text — a scene, a description, a choice prompt.
- Create another passage for each outcome.
- Link them by putting the target passage name in double square brackets inside your text, e.g.
[[Open the door]]or[[Open the door->Hallway]]. - Repeat until the branches converge or end, then use the Play/Test view to click through it.
Twine publishes directly to HTML, so the finished story is a single file you can host almost anywhere or send to a reader.
A worked example
A three-passage story might look like this:
- Start: "The lighthouse door is unlocked. [[Go inside]] or [[Walk to the cliffs]]."
- Go inside: describes the interior, then links back or ends.
- Walk to the cliffs: describes the view, with its own ending.
That is the whole technique. Everything else — variables, conditional logic, images, CSS, JavaScript — is optional extension you can add later, as the project page notes.
Choosing a story format
Story formats are the engines your story runs on, and they decide what features and syntax you get. Twine ships with several, each with its own online guide and examples in the Twine Cookbook:
| Format | Roughly suited to |
|---|---|
| Harlowe | Beginners who want readable, built-in macros for common tasks |
| Chapbook | Writers who want a gentle, prose-first feel with less markup |
| SugarCube | Larger projects needing state, saves and more control |
| Snowman | Authors comfortable with JavaScript and templates |
If you are starting out, pick one format and stay with it while you learn; switching later means rewriting syntax, not just text.
Practical next steps
- Read the Twine Reference first for the interface itself, then the guide for your chosen format.
- Keep passages short so the map view stays readable as branches multiply.
- Test by clicking, not by reading — dead ends and unreachable passages are easy to miss.
- When you get stuck, ask in the Interactive Fiction Community Forum at Interactive Fiction Community Forum or the Twine Discord linked from the site.
Twine itself is free to use for any purpose, including commercial work, and its development is supported through Patreon and the Interactive Fiction Technology Foundation.
Which Twine story format should I choose for my project?
Choose based on how much control you want over presentation and logic. Twine's story formats are like game engines: they decide which features you can use and how you write code. For a first project, pick Harlowe or Chapbook; reach for SugarCube or Snowman only when you need deeper customization.
Quick comparison
| Format | Best for | Trade-off |
|---|---|---|
| Harlowe | Beginners and most text-heavy stories; built-in macros for variables, conditions, links, and basic styling | Less direct control over the underlying HTML/CSS than SugarCube or Snowman |
| Chapbook | Clean, readable stories with a gentle learning curve; good for short games and interactive essays | Smaller ecosystem of third-party extensions than Harlowe or SugarCube |
| SugarCube | Larger projects needing save systems, complex state, inventory, and heavy customization | More concepts to learn; easier to over-engineer early |
| Snowman | Authors comfortable with JavaScript who want near-total control over rendering | You supply more of the structure yourself; less guidance for beginners |
How to decide
- Just starting out: Harlowe. It lets you build a simple story without writing code, then add variables and conditional logic as you grow.
- Want a tidy, low-friction writing experience: Chapbook. It keeps markup readable, which helps when a project gets long.
- Building something game-like with saves and state: SugarCube. Its feature set matches that ambition, at the cost of a steeper start.
- You already write JavaScript and want to control the page: Snowman. Expect to handle more plumbing yourself.
A practical next step: write the same two-scene opening in your top two candidates. If one feels natural after an hour, that's your format. Whichever you pick, the built-in guides for Chapbook, Harlowe, Snowman, and SugarCube cover each one, and the Twine Cookbook explains how to choose and shows common tasks per format. You can also ask working authors on the Interactive Fiction Community Forum or the Twine Discord.
One caution: Twine's older Q&A and forum archives are read-only and were closed in 2017 and 2019, so treat answers there as likely out of date. For current behavior, rely on the format guides and the Cookbook.
Can I sell a game made with Twine commercially?
Yes. Twine's own page states that anything you create with it is completely free to use any way you like, including for commercial purposes. There is no royalty, revenue share or license fee attached to the tool itself.
What that covers in practice
- Selling a finished game on itch.io, Steam or your own site.
- Publishing a Twine story inside a paid app, a book, or a course.
- Using Twine output in client work you invoice for.
Because Twine publishes directly to HTML, a commercial release is usually just the exported file hosted wherever you sell or distribute it.
What it does not cover
The tool's license is not the same as the licenses of everything you put into the game. Check separately:
- Images, music, fonts and sound effects you did not make yourself. These carry their own terms, and "free to download" is not the same as "free to sell with."
- The story format you choose. Story formats are like game engines and determine your features and code style; each has its own project and its own terms. Chapbook, Harlowe, Snowman and SugarCube are the built-in options, and each has an online guide.
- Third-party code or plugins you add for variables, conditional logic, CSS or JavaScript.
A useful next step
If you are planning a paid release, make a short asset list before you publish: every file that is not your own writing or your own art, plus where you got it and under what terms. That list is what you would need if a storefront ever asks you to confirm you have the rights to ship what you are selling.
For learning the tool itself, the Twine Reference covers the interface, and the Twine Cookbook has advice on choosing a story format plus examples for each built-in one. Questions from other authors tend to get answered on the Interactive Fiction Community Forum and the Twine Discord.
How do I run or download Twine on my computer or in a browser?
Twine runs in two ways: as a downloadable desktop app, or directly in your web browser. Both are offered by the same project, so you can pick whichever fits how you work.
Desktop app
- Download it from Twine and install it like any other application.
- Best when you want your story files stored locally, want to work offline, or prefer a dedicated window rather than a browser tab.
Browser version
- Choose "Use in your browser" on the same site; nothing to install.
- Best on a borrowed or locked-down computer, or when you want to start writing immediately.
The two are not identical in feel: the browser version depends on your browser's local storage, so clearing site data can affect your work, whereas the desktop app keeps files on your disk. For anything you care about, export or save your story regularly regardless of which you use.
As a concrete example: a teacher setting up a classroom exercise can point students at the browser version so nobody has to install anything, while a writer working on a long branching novel across many sessions will likely prefer the desktop app for reliable local files.
Next step: whichever you choose, read the Twine Reference first — the site describes it as the guide to the interface and the recommended starting point for newcomers. After that, pick a story format, since the format acts like a game engine and determines which features and coding style you get; the Twine Cookbook explains how to choose one. Built-in formats include Chapbook, Harlowe, Snowman and SugarCube, each with its own online guide. If you get stuck, the Interactive Fiction Community Forum and the Twine Discord are the two community venues the project points to.
One practical note: the site lists the current version as 2.12.0, and an older 1.x line is kept separately on the IF Archive — if a tutorial looks unfamiliar, check which version it was written for.
Where can I get help or learn more about using Twine?
Start with the official documentation, then join the community when you get stuck on a specific problem.
Official learning resources
- Twine Reference — a guide to the Twine user interface. This is the intended starting point for newcomers.
- Story format guides — Twine's built-in formats (Chapbook, Harlowe, Snowman, SugarCube) each have their own online guide. The story format is what determines which features you get and how you write code, so it's worth picking one early and reading its guide.
- Twine Cookbook — advice on choosing a story format plus worked examples of common tasks for each built-in format. Best used once you know the basics and want to do something specific.
Community help
- Interactive Fiction Community Forum — a web forum for interactive fiction authors, useful for design and craft questions as well as tool problems.
- Twine Discord — live chat with other Twine authors, better for quick back-and-forth troubleshooting.
A practical order to follow
- Build a tiny branching story with no code to get comfortable with passages and links.
- Read the Twine Reference to understand the interface properly.
- Choose a story format and read its guide.
- Search the Cookbook for the specific thing you're trying to do.
- Ask the forum or Discord only after that — you'll get better answers with a concrete question.
If you want to go further
The page also points to source code repositories for the Twine application, its file-format specs, and each story format, plus ways to contribute non-financially: answering questions, improving the Cookbook, writing tutorials, fixing bugs, or translating the interface. Note that the older Q&A and forum archives hosted on the site were closed in 2019 and 2017, so treat anything there as likely out of date.
For a concrete case: if you're building a short choice-based story for a class and links stop behaving as expected, the story format guide usually explains the behaviour, while the Discord is faster for "why did this break" questions. If your question is about structure or pacing rather than the tool, the forum is the better fit.
User reviews (0)