Universe Index
An app that takes one changed fact and builds an encyclopedia of the alternate history that follows, with articles, timelines, and generated images.
- Date
- April 2026
- Built with
- Next.js, React, TypeScript, SQLite, OpenRouter, fal.ai

Universe Index starts with one changed fact and builds an alternate history around it, written up as an encyclopedia. From that premise the app works out what else would be true in the new world, builds a timeline, and writes article pages about the people, places, and organizations in it, with generated images. The facts it settles on become the universe's canon. Pages link to pages that haven't been written yet, the way red links work on Wikipedia, and every page keeps its revision history. The pages are meant to read as if you found them, not as if they were written for you a second ago.
I'm interested in using language models to make media you can explore. So far that means encyclopedia entries, timelines, and generated images. Eventually a universe might also have its own music, fake albums, radio stations, documentary clips, maps, and posters. A different history should produce a different culture.

How a universe grows
You type in a changed fact and the app builds an encyclopedia for that timeline. A universe starts with a handful of pages and grows from there. You can have it research and write up a red link, update the pages a new fact affects, add generated images, fork the timeline into a branch, or review proposed changes before they go in. Each of these runs as a queued simulation job.
There's no chat box. You use it the way you'd use Wikipedia: read pages, follow links, browse categories and timelines, and check a page's history and the canon behind it. Controls on the pages let you decide where the simulation goes next.
Because everything is saved, a universe can collect more than text. A political movement might build up posters and speeches, a city might get maps and transit diagrams, and a fictional music scene might get artists, album covers, interviews, and eventually its own sound. Whatever gets generated stays in the archive.

One run, start to finish
These are screenshots of the working app, not concept art. They follow one real run on my machine, starting from a premise about municipal dream archives. The app reads the premise, writes a set of rules for the new universe, and stops for review. Once the rules are accepted, it writes the pages and generates the images.





Building it with Codex and Claude
I decide the premise, the rules the simulation follows, and how the app should feel. Codex and Claude do much of the coding, debugging, and architecture. That's how I can work on something this large and still make the small decisions that keep each archive consistent.
This project suits working with agents, because one change can touch the interface, the database, the job queue, the prompts, the simulation rules, image generation, exports, and several small interface decisions at once. My loop is simple: I describe the next thing it should do, an agent writes the change, I run the app, look at what came out strange, and correct course. Codex handles the longer stretches of work in the codebase, like database migrations, tests, type errors, queue behavior, and changes across many files. Claude is more useful for critiquing the product, simplifying the interface, and suggesting other ways to structure the code. Together they work like a small team that I direct.
I don't write every line by hand. I keep the premise weird and make the calls on taste.
Where it's going
Eventually I want it to be an encyclopedia simulator that could cover everything in a universe. It wouldn't write all of Wikipedia up front, but every possible page would have a link and could be written when someone asks for it. A small universe might have 25 pages; a deeper run might have hundreds or thousands. Once a page is written it is saved as part of the canon, and you can check it, revise it, fork it, dispute it, or expand it.
I want the same system to handle text, images, music, video, and anything else that makes a timeline feel lived in. Everything the models make goes into the archive and adds up to one consistent world.
This is also how I like to learn: build the thing, keep pushing it until it gets interesting, and make the next version stranger and more capable.
