Introducing Storyarn: A Connected Narrative Design Platform
Storyarn is a narrative design platform that keeps world data, branching dialogue, scenes, testing, localization, and export in one connected project.
Today we are opening Storyarn to everyone.
Storyarn is a narrative design platform for teams building interactive stories. It connects world data, branching dialogue, spatial scenes, testing, localization, and export inside one project, so the relationships that make a story work do not disappear between tools.
Registration is open, no invitation is required, and Storyarn is free during early access.
This first post is not a tutorial. It explains the product decision behind the platform: interactive stories are often created across several capable tools, but the story still has to behave as one system. Storyarn is built around the connections that are hardest to preserve when worldbuilding, dialogue, state, scenes, localization, and implementation live in different places.
The problem is not writing the line
Consider a short exchange in which the player asks a character about a hidden location.
The response only appears when that character trusts the player. Choosing it changes the state of a quest. The location becomes available on the map. The line needs translation, its voice-over needs tracking, and the final result has to reach the game in a form the runtime can understand.
Writing the sentence is the smallest part of that decision.
Teams do not lack capable tools, and their boundaries are not absolute. World Anvil focuses on organizing and presenting the narrative world, while Notion can be adapted into a project wiki or knowledge base. articy:draft and Arcweave cover a much broader part of narrative design: structured data, interactive flows, logic, testing, localization, and engine integration. Yarn Spinner and Ink approach the problem through narrative scripting and execution inside the game. Some teams solve most of the workflow with one platform; others deliberately combine several according to their production and preferred way of working.
Storyarn does not begin from the assumption that those tools are inadequate. It approaches the same problem through a different product experience: keeping world data, narrative, state, scenes, and localization connected and navigable in one shared web environment. The fragility we want to reduce appears when those relationships cross tool boundaries or have to be reconstructed during integration.
Those connections become fragile when a condition is renamed in the dialogue but not in the engine integration. A character decision changes in the world bible while an older assumption survives in a branch. A location exists in the setting, yet no reachable path reveals it. A translator receives a line without the state or context that gives it meaning.
Teams preserve these connections with stable identifiers, naming conventions, integration code, documentation, reviews, and people who know where every dependency crosses a tool boundary. That coordination works, but it becomes more expensive as the project grows and more disciplines depend on the same decisions.
Storyarn is another response to that continuity problem.
A connected narrative model
The central idea is straightforward: the character, the trust value, the conversation, the location, and the localized line should not become five representations that the team has to reconcile continually by hand.
In Storyarn they can belong to the same model.
Sheets describe the structured parts of a world: characters, places, factions, items, quests, and the fields that matter to the project. Flows use that data directly in dialogue, responses, conditions, and instructions. Scenes give narrative content a spatial context. Localization retains the identity and source of player-facing text instead of receiving an anonymous pile of strings.
These are not separate mini-products placed behind one login. A field defined for a character can be read by a condition in a Flow and changed by an instruction. A scene can lead into that Flow during exploration. When the source dialogue changes, the localization workflow can show that the existing translation now needs attention.
The connection is the product.

This changes the questions a team can ask. Not only “where is this line?”, but “what makes it available?”, “what does it change?”, “where can the player encounter it?”, “which translation came from it?”, and “will the exported project still carry those relationships?”
It also keeps the creative intent close to the work. The graph does not need a separate paragraph explaining what a condition was supposed to mean. Worldbuilding context and executable state should not be allowed to drift apart. The handoff does not begin by reconstructing the model from identifiers, exports, and private conventions.
Follow one decision through the project
Return to the hidden location.
The character’s trust value is defined once as structured data in Storyarn. The conversation checks that exact value. If the requirement is met, the response becomes available; choosing it can update the quest and reveal the location. The scene gives the location a place in the world, and the dialogue keeps its source identity as it moves into localization.
The important point is not that Storyarn has a sheet editor, a node canvas, and a map. It is that the same decision can travel through all three without being translated into a new private convention at every boundary.

That does not remove complexity. Branching narrative has state, dependencies, reusable structures, delayed consequences, and edge cases. Hiding those things would make the tool feel simpler while making production less reliable.
Storyarn’s job is to keep that complexity visible and navigable. A writer can stay with the conversation while a narrative designer inspects its rules. A localization team can see the source context. An engineer can receive a coherent model instead of several exports whose relationships have to be reconstructed during integration.
Different disciplines do not need identical interfaces. They do need to be looking at the same story.
Test the story before the engine
An interactive story is not complete because every node has text. It has to execute.
Storyarn’s Story Player runs a Flow as the player would experience it, using its real conditions and state changes. The Debugger exposes the logic underneath: the active path, current variables, breakpoints, and the reason a branch was or was not reached.
Those are different kinds of feedback. The Story Player helps a team judge pacing, choice, and context. The Debugger helps it understand behavior.

The game engine still owns runtime reality. UI, animation, audio, saving, input, and the final integration must be tested there. But the engine should not be the first place a narrative designer learns that a branch is unreachable or a condition reads the wrong value.
Before export, Storyarn validates the connected project for broken references, unreachable paths, missing entry points, incomplete content, and other issues that are easier to resolve while the narrative context is still present. It can then prepare the project for formats including Ink, Yarn Spinner, Unity Dialogue System, Godot Dialogic, Unreal Engine, and articy:draft.
Export does not eliminate integration work. It gives that work a better source.
Open beta is where the model meets real projects
Storyarn can already structure worlds, build and run branching Flows, map narrative spaces, manage localization, validate projects, and prepare exports. It is also an open beta: features will change, rough edges will surface, and real productions will challenge assumptions that tidy examples never reach.
That is why we are opening it now.
We want to learn where narrative teams still have to leave the platform. Which specialist tool still owns a crucial part of the workflow? Which relationship cannot be expressed? Which connection becomes awkward when work crosses a tool boundary? Which handoff still loses context? Which part of a writer’s process feels constrained instead of supported?
We do not expect Storyarn to replace every tool a team values. We want to reduce how much of the narrative model has to be reconstructed whenever work moves from one tool to another.
Storyarn is being built for narrative designers, game writers, world builders, localization teams, and small studios that need more than a dialogue editor without wanting their creative process buried beneath enterprise machinery.
We are not trying to make interactive narrative look simpler than it is. We are building a place where its complexity can stay connected, testable, and understandable from the first idea to the game.