An automated app that produces a new file of true, fascinating facts from history, science and art, as a quiz and a narrated mini episode, 3 times a week.
Personal project.
Built with
This project grew out of a love for the Horrible Histories books I used to read while in primary and secondary school. They made history stick, by leading with the strangest true detail rather than the polished version.
Now post-undergrad and working, I wanted a small, regular dose of that same feeling to continue educating myself, but built as something that kept itself running rather than something I had to feed by hand.
This is how it looks on my phone. Play the quiz on the left and listen to the podcast!
The quizFour questions, a reveal after each
The narrated episode
The Curio Files
Saturday, September 26
4 facts, one story
San Francisco, 1859. A failed rice speculator named Joshua Norton walks into a newspaper office and hands over a proclamation. He is no longer a bankrupt businessman. He is, effective immediately, Emperor of these United States. The city could have laughed him into the bay. Instead it played along for twenty one years, printing his own currency, seating him free at theaters, saluting him on the street, because sometimes a broke man reinventing himself with enough conviction is more entertaining than the truth. Norton never held real power, but he held something better, a city's affection, and he kept it until the day he dropped dead on a street corner and thirty thousand people showed up to grieve a man who ruled nothing at all.
Reinvention like that usually needs a story. Some creatures just need a few weeks. Cut off an axolotl's leg and it does not scar over and call it a day, it grows the leg back, bone, muscle, nerve, skin, all of it, seamless, as if the wound never happened. Push further and researchers have watched them regrow chunks of spinal cord and heart tissue too, which is the kind of biological trick that makes human medicine look like it is still using stone tools. An axolotl does not perform an identity, it simply refuses to accept damage as permanent, and labs studying that stubborn cellular optimism are hunting for whatever switch we lost somewhere back in our own evolutionary story.
Edvard Munch understood damage better than most painters, and it is fitting that his most famous work has been kidnapped twice. In 1994, while the world's attention was pinned on the Lillehammer Winter Olympics, thieves used a ladder to break into Oslo's National Gallery, lifted The Scream off the wall in under a minute, and left a note thanking the museum for its lousy security. A decade later, a different version got taken at gunpoint from the Munch Museum in broad daylight. Both times the painting came back, battered but intact, proof that even a portrait of pure existential dread can survive theft, ransom, and a couple of very bad days without losing its face.
Nothing on this list transforms quite as violently as a patch of New Mexico desert did on July 16, 1945. When the Trinity test detonated the world's first atomic bomb, the fireball was hot enough to melt the sandy ground itself, and as it cooled, that sand fused into thin sheets of pale green glass scattered across the blast site. Scientists named it trinitite, and for a while people pocketed chunks of it as souvenirs before anyone fully clocked that it was mildly radioactive. It is illegal to remove from the site today, but old samples still circulate among collectors, a literal fossil of the moment the twentieth century changed shape.
Put a con artist emperor, a self healing salamander, a stolen scream, and a sheet of atomic glass side by side and you get the same lesson wearing four different costumes, that reinvention is rarely gentle and never fully asked for permission. Norton rebuilt himself out of pure nerve, the axolotl rebuilds itself out of raw biology, the painting got rebuilt by museum conservators after violence, and the desert got rebuilt by physics at the worst possible temperature. Transformation does not care whether it is inspiring or terrifying, it just happens, and afterward something new is standing there, scarred or not, insisting on being looked at.
New file Monday, Wednesday, Saturday.
The episodeThe same facts, told as one story
A real episode from September 26, narrated by ElevenLabs. Sound on.
The whole project is housed in GitHub. 3 mornings a week, a scheduled GitHub Actions workflow runs a small Python script, and that script does its work by calling 2 APIs.
First, it calls Claude through the Anthropic API to research 4 true facts spanning history, science and art, then turn them into 2 things covering the same material. One is a 4 question quiz with a short reveal for each answer. The other is a single 500 - 700 word narration that ties all 4 together as one story rather than a list.
Next, it sends that narration to the ElevenLabs API, which turns it into real spoken audio. The new file is committed back to the repository and published with GitHub Pages as one self hosted page, with quiz cards, an audio player, a running archive of every past file and a podcast feed. OneSignal then sends the notification that a new file is ready.
GitHub Actions starts the run 3 mornings a week.
Claude, via the Anthropic API, finds 4 true facts across history, science and art.
The same facts become a quiz and a flowing narration.
The ElevenLabs API turns the narration into spoken audio.
GitHub Pages publishes the update, the archive grows and OneSignal sends a notification.
Guess firstEvery case starts with a question
Then the case notesThe full story, with its source
File closedA rank and a personal best
First off, The Curio Files isn't an actual app from the App Store. It's a saved webpage on my home screen, built to look and behave exactly like one, and because of that I struggled with getting my iPhone to send a notification when a new file was ready. iPhones are much stricter about notifications from a saved webpage than from a real app.
Safari on iPhone only lets the notification prompt appear after a real tap, never automatically. Even once permission is granted, it needs a separate identifier that most setup guides leave out. I fixed it by testing each step on my phone until the notifications finally came through.
Now, I get a notification on my phone 3 times a week to take the quiz and listen to the podcast, which I can do on the go. Feel free to ask me for a random fact whenever you see me!