Hi everyone. I’ve been lurking here for a while and finally decided to share something I’ve been working on. I’m curious to hear what people who’ve been creating IF for much longer than me think about it.
How it started
It all started from a silly idea: last year at the office, a colleague got scammed by a phishing email. Everyone was talking about how they would never fall for something like that, and I wondered if that was actually true. I left mysterious web links on my coworkers’ desktops. Whoever clicked was greeted by a terminal screen, green text on black, typewriter effect, timed messages, choices with a countdown. A story about conspiracies and secret plots among colleagues inside the office. In the backend I tracked who opened what, when, and what choices they made. Basically a tracking system disguised as a game.
The problem was creating the content, because every branch, every timer, every transition was hardcoded and a nightmare to manage. So I built a visual editor: a node graph where each node is a story level and each connection is a choice. It reminded me of the gamebooks I used to read as a kid, and I tried to build tools that would let me create stories like those. From there things got a bit out of hand and I ended up with an entire platform. At some point a colleague used it to create an interactive story to propose to his partner, definitely a use case I hadn’t planned for.
The thing is, I had never heard of Twine, Ink, or ChoiceScript when I started. I only found out about them later, and by that point I had already built a lot of stuff. On one hand I probably reinvented the wheel on many things. On the other, not knowing anything about the IF ecosystem led me to make very different choices from what I would have made starting from an existing tool.
What came out of it
Since the starting point was “I want to control an experience for specific people” and not “I want to publish a story”, the tool took a direction of its own:
- Master/player model, the master creates individual players, assigns them specific stories, and controls their progress. Stories can be private, the player just receives a link and doesn’t know what’s coming. I’m not sure if anything similar exists in IF, I haven’t found anything, but maybe I’m missing something.
- Timed choices, each level can have a countdown for choices. When time runs out, the story can end (game over), pause (the master has to unlock it), or the player can retry. Time pressure was the core of the original experiment, so it was one of the first things I implemented.
- Session tracking, you can see where each player is, what they chose, how long they took. Born from the original tracking need, but it turned out to be useful for resuming the game from where it was left off too.
- Visual graph editor, web-based, nothing to install. You design the story as a flowchart with automatic layout. Probably nothing revolutionary for anyone who already knows visual tools, but for me coming from hardcoded content it was a game changer.
- JSON import/export, stories can be exported and imported as JSON. Your content is yours.
- Multiple themes, the Matrix-style terminal is still there (and yes, some people who open the link for the first time think it’s a virus and close it immediately, still working on that), but I’ve added other visual themes too.

Over time I also added support for public stories, anyone can play without being created as a player and without registering (I use a cookie to save the player ID so they can resume where they left off), with a publication workflow with review. But the core remains the private master/player model.

Multilingual and AI
The platform supports multiple languages, both the interface (Italian and English for now) and the story content itself. This means an author can write a story in Italian and make it available in English, German, Spanish and French without rewriting it from scratch. AI is integrated directly into the editor to handle translations: I select the target languages, and the system can translate all the content (narrative text, choices, responses) while preserving the tone and player placeholders. The result stays editable, so I can review and correct everything before publishing.
Beyond translations, there’s an optional AI assistant that helps draft narrative content. I describe what I want, even vaguely, and the assistant generates a preview with nodes and transitions that I can tweak, redo or discard. I’m mentioning this for transparency, I know AI is a sensitive topic. In my case I use it as a help for first drafts, for checking narrative inconsistencies, and above all for translations. The idea isn’t to replace the author’s writing, but to get the mechanical, repetitive work out of the way.
I’m Italian (and my English isn’t great), I translated the English interface with AI, let me know if something is off.
What it doesn’t do
No inventory, no variables, no state tracking, no free text input. It’s purely choice-based. For my original use case I didn’t need any of that, but I’ve realized that for creating “gamebook” style stories or “real” IF, these would be important. I have some ideas on how to implement them, but I’d rather hear what you think first.
One thing I’m working on: while trying to create stories, even short ones, I kept running into narrative coherence problems between levels and paths, like a node that takes something for granted that the player might not have discovered, because they went through a different path. I realized I needed a planning mode where I can write a brief summary for each level, mark what gets revealed and what’s assumed known, and organize levels by tier. The goal is to be able to verify coherence before writing the actual prose.

The real question
Did I build something that makes sense for this community, or did I just reinvent the wheel in a worse way? I’m genuinely curious, if you saw this tool with no context, what would you think? What’s missing? What’s useless?
If you want to take a look:
- Playable demo stories: https://followblackrabbit.app/play
- Studio tools section for creating stories: Create Interactive Stories - The Black Rabbit Studio
- https://followblackrabbit.app
The demo stories you’ll find are still fairly simple, I built them more to test the mechanics than for narrative quality. If anyone wanted to try creating something of their own, you’d be doing me a huge favor.
If you register and hit any limits on the number of content you can create, just message me, I’ll unlock everything. I care about feedback more than anything else.
The documentation is still incomplete, there’s a guide inside the studio section (after registering) but it’s a work in progress.
Thanks to anyone who reads this far and wants to give me some suggestions.