Generated by GPT-5-mini| Twine | |
|---|---|
![]() Garn,_grovlek_lin16_och_bomull.jpg: User Damast on sv.wikipedia
derivative work: · CC BY-SA 3.0 · source | |
| Name | Twine |
| Developer | Chris Klimas |
| Released | 2009 |
| Programming language | HTML, JavaScript, CSS |
| Operating system | Cross-platform |
| Genre | Interactive fiction, hypertext |
| License | GPLv3 (original), various |
Twine is an open-source tool for creating interactive, nonlinear stories and hypertext narratives using a visual editor and a simple markup language. It enables authors to link passages, manage variables, and publish playable HTML files without requiring advanced programming skills. Twine has been adopted by writers, educators, game designers, and researchers for projects ranging from experimental literature to pedagogical simulations and narrative games.
Twine was created by Chris Klimas in 2009 as a lightweight authoring environment for hypertext fiction, inspired by earlier projects like HyperCard, Storyspace, MUDs, and Interactive fiction. Early versions prioritized a visual map and straightforward passage linking, drawing attention from communities around Ecto, Inform, Z-machine, and the Electronic Literature Organization. Over the 2010s Twine evolved with contributions from volunteers and integrations with projects such as IFComp, r/interactivefiction, and academic work at institutions including MIT, Stanford University, and University of California, Santa Cruz. Twine's profile rose through high-visibility releases and analyses in venues like The New Yorker, The Guardian, and coverage connected to festivals like Game Developers Conference and Independent Games Festival.
Twine's architecture centers on a browser-based editor built with HTML5, JavaScript, and CSS3, exporting self-contained HTML files playable in Mozilla Firefox, Google Chrome, Apple Safari, and Microsoft Edge. Internally it represents content as interconnected passages with metadata, influenced by paradigms from HyperCard stacks and Zork style branching. Multiple story formats—such as Harlowe, SugarCube, and Snowman—provide APIs and scripting hooks similar to libraries like jQuery, Underscore.js, and templating systems from Handlebars.js. Twine projects interoperate with authoring ecosystems including GitHub, Dropbox, and Google Drive for versioning and collaboration, and they can embed assets hosted on platforms like Flickr, SoundCloud, and YouTube.
Twine offers a passage-based visual map, linking controls, and variable management comparable to systems in Inform 7 and Ren'Py. It supports conditional logic, macros, and expressions via formats like SugarCube, which borrow concepts from Lua (programming language), Python (programming language), and JavaScript event models. Multimedia embedding enables inclusion of images from Wikimedia Commons, audio from Bandcamp, and video from Vimeo alongside CSS-driven styling akin to frameworks such as Bootstrap or Tailwind CSS. Exported stories are single-file HTML artifacts suitable for web publication on platforms like itch.io, Newgrounds, and institutional repositories at Project Gutenberg or university archives.
Authors typically begin in the Twine editor by creating passages and linking them with bracketed link syntax, then iteratively test stories in desktop browsers such as Firefox Developer Edition or Chrome Canary. Advanced workflows integrate code editors like Visual Studio Code or Sublime Text for custom JavaScript and CSS, and use source control with Git hosted on GitHub or GitLab. Educational deployments occur within learning management systems like Moodle and Canvas, and preservation workflows interface with archives such as the Internet Archive and university special collections. Users often combine Twine with tools from Inklewriter, ChoiceScript, Ren'Py, and TADS for hybrid projects.
Twine's community spans forums, social platforms, and academic networks including r/interactivefiction, the Interactive Fiction Community Forum, and mailing lists tied to the Electronic Literature Organization. Annual events and contests such as IFComp, Ludum Dare, and themed anthologies curated by groups like Porpentine Charity Heartscape have fostered distribution and critical attention. Third-party extensions, macros, and story formats are shared via repositories on GitHub and gists by contributors associated with institutions like NYU, UCLA, and University of Michigan. Commercial and noncommercial publications using Twine have appeared in anthologies from Oxford University Press, MIT Press, and small presses like Offset Press.
Critics and scholars have discussed Twine in relation to broader conversations about accessibility, representation, and indie game development featured in outlets such as The New Yorker, The Guardian, The Atlantic, Wired, and Polygon. Twine has been credited with lowering barriers for marginalized creators in dialogue alongside figures and works from Zoe Quinn, Anna Anthropy, Porpentine Charity Heartscape, and indie titles showcased at IndieCade and PAX. Academic research published through conferences like Digital Humanities and journals associated with MIT Press has analyzed Twine texts for themes comparable to studies of Choose Your Own Adventure and hypertext literature like works by Michael Joyce and Moulthrop, Stuart. Debates persist about archival stability and discoverability in contrast to games distributed via Steam or preserved in institutional archives like the Library of Congress.
Category:Interactive fiction tools