Show HN: A 'Choose Your Own Adventure' written in Emacs Org Mode
dskhatri Wednesday, July 16, 2025I authored and developed an interactive children's book about entrepreneurship and money management. The journey started with Twinery, the open-source tool for making interactive fiction, discovered right here on HN. The tool kindled memories of reading CYOA style books when I was a kid, and I thought the format would be awesome for writing a story my kids could follow along, incorporating play money to learn about transactions as they occurred in the story.
Twinery is a fantastic tool, and I used it to layout the story map. I really wanted to write the content of the story in Emacs and Org Mode however. Thankfully, Twinery provided the ability to write custom Story Formats that defined how a story was exported. I wrote a Story Format called Twiorg that would export the Twinery file to an Org file and then a Org export backend (ox-twee) to do the reverse. With these tools, I could go back and forth between Emacs and Twinery for authoring the story.
The project snowballed and I ended up with the book in digital and physical book formats. The Web Book is created using another Org export backend.
Ten Dollar Adventure: https://tendollaradventure.com
Sample the Web Book (one complete storyline/adventure): https://tendollaradventure.com/sample/
I couldn't muster the effort to write a special org export backend for the physical books unfortunately and used a commercial editor to format these.
Twiorg: https://github.com/danishec/twiorg
ox-twee: https://github.com/danishec/ox-twee
Previous HN post on writing the transaction logic using an LLM in Emacs: https://blog.tendollaradventure.com/automating-story-logic-w...
Twinery 2: <https://twinery.org/> and discussion on HN: https://news.ycombinator.com/item?id=32788965