Twine es una herramienta de código abierto para escribir relatos interactivos y no lineales, creada por Chris Klimas y desarrollada por una comunidad de colaboradores. El texto se escribe en pasajes que se enlazan entre sí sobre un mapa visual, y el resultado se publica como un único archivo HTML que se abre en cualquier navegador.
La Story Library reúne los relatos y el Story Map muestra los pasajes y sus conexiones. Desde la pestaña Build, Test abre una versión de prueba con información de depuración, Play muestra el relato terminado, Proof genera una copia corrida para revisar el texto y Publish to File exporta el HTML. Archive guarda la biblioteca entera en un archivo y Export as Twee vuelca el relato como texto plano, formato que también se puede reimportar.
Los formatos de relato Harlowe, SugarCube, Chapbook y Snowman vienen incorporados y determinan la sintaxis disponible para variables, condicionales y macros; se pueden añadir otros por URL y editar el CSS y el JavaScript de cada relato. La interfaz está traducida a más de veinte lenguas.
Se usa en el navegador, donde el trabajo queda en el almacenamiento local y conviene hacer copias con Archive, o instalado en Windows, macOS y Linux; no hay aplicación para Android ni iOS. Es software libre con licencia GPL-3.0, sin registro ni planes de pago, y lo creado con él puede usarse con fines comerciales.