This is a minimalist framework for writing / playing through (non-linear) stories.
Let's introduce the basic idea by example: have a look at the example story.
A Story Adventure is primarily a set of Sections together with a State representing the current (initially the starting) state.
Sections links to each other via Choices in the .next
array of each section. Sections without choices are terminal.
Try online at: https://echsecutor.github.io/story_adventure/editor
- Files never leave your computer, the editor is pure JS running in your browser
Using the editor you can write your own story adventures by providing text and media for each section and linking the sections by choices.
We proudly acknowledge using the following open source components in this project:
- Cytoscape.js for drawing the graph view of the story
- Bootstrap 5 for UI components
- marked for Markdown rendering
- DOMPurify for HTML sanitization
See there for the corresponding licenses.
Copyright 2024 Sebastian Schmittner
All code published in this repository is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
For the included open source projects, different licenses might be applicable. See the respective projects pages listed above for details.