InfinLit RPG Open Source Release
You ever have one of those ideas that haunts you until you do something about it?
You tell it you see it, but there are other things that need done.
Then it pops into your head again and again and again.
You try to tell it you just don't have the time, but the idea only gets louder.
You let it know you're in the middle of another (few) project(s) and really don't have the time...
And then it lodges itself in the front of your brain and refuses to go away like The Song That Doesn't End.
No? Just me?
Well -- this is one of those ideas.
I present to you: InfinLit RPG — an Open Source Experiment.
InfinLit RPG is a limitless LitRPG system using local LLMs (Ollama), SQLite for data, and just enough vanilla HTML/CSS to be skinnable and themeable.
This is my first open source project because, honestly, I don't have the time to see it through by myself.
More importantly, it feels like one of those ideas that's bigger than whatever version I would build alone. Every time I think about it, I come up with three more directions it could go.
So rather than let it sit on a hard drive for another year, I'm throwing it out into the world. Maybe someone contributes. Maybe someone forks it. Maybe it quietly inspires another project entirely. Maybe it stays dormant until I'm able to return to it, if that happens...
Either way, I'd rather see the idea move than keep it locked up waiting for the "perfect" version.
It would probably serve as a good "Intro to Local LLMs / Ollama" project because, at its core, the flow is relatively simple, and the prompts are easy enough to understand and modify without knowing too much Node.js or HTML/CSS/JavaScript. (Dig around in prompts.js if you're curious.)
The user inputs what type of story they would like to read/play.
An LLM is called to generate the overall story arc, stats, inventory, and various systems for the run.
Then another LLM call happens per page, meaning each page is generated fresh based on the adventure context and (hopefully) follows the story arc. It also updates the Story Summary at the same time.
All of this, including user input, is stored in SQLite so you can save, load, and continue your story whenever you'd like.
Clone your copy today, or even contribute and help move it forward:
Future Ideas
-
Skins — Drop some CSS into
public/themesand easily swap out colors and styles. (Really just needs a button or dropdown for theme selection.) -
Adventure Packs — Prebuilt story arcs, stat systems, characters, settings, and prompts. The starting point would be shared, but every generated page could still be unique.
-
Narration — Plug in Whisper, Piper, browser TTS, or another speech system for a full audio-adventure experience.
-
Generated Images — Create an image for each page based on the generated story text. Technically possible now with Flux. I'm personally waiting for Linux and Windows support before I dig deeper into it.
-
Story Replay & Export — Replay a completed adventure, review your choices, or export it to PDF, EPUB, Markdown, or DOC formats.
-
Agent Party Members — One or more LLMs play as members of your adventuring party, offering advice, commentary, arguments, and occasionally terrible ideas.
-
A thousand little menu, settings, and UI/UX tweaks.
Anyway, I hope you enjoy it. I can't wait to hear about the stories it creates for you.
Now, back to other experiments.