Orin
Imagine a morning radio show that exists for an audience of exactly one — you. Two hosts talk you through what landed in your inbox overnight, what's on your calendar today, and the news you actually follow, while you make coffee. It's made fresh every morning, about you, for nobody else.
It has grown from a single daily briefing into a personal podcast platform — multiple shows, each with its own cover art and show notes, an episode feed, one-off episodes you can ask for on demand — and Orin Radio.
Two hosts, not a text-to-speech robot
A briefing you listen to has different rules than a feed you scroll. Two hosts talk through your morning the way a good radio duo would — one carries the facts, the other pushes back, asks the obvious question, connects it to yesterday. It's generated fresh every day, for exactly one listener.
Memory
Orin builds context over time. It learns which newsletter you never care about, which project the recurring Thursday call belongs to, which topics deserve thirty seconds instead of five. The tenth briefing should know you better than the first — that's the entire bet.
Private by design
Your inbox and calendar are the most personal data you have. Orin has no ad model and sells no data — the product is the briefing, not you. That constraint shapes the architecture, not just the privacy policy.
Where it came from
Orin started as Receipt AI — AI summaries printed on thermal receipt paper at 7 a.m. The printer worked. The idea deserved audio.
Orin Radio
Your own Spotify, played like a radio station. Every song end is DJ-mixed — phrase-aligned, tempo-matched, with a loop roll or a bass swap — and between songs a host talks about what's in your inbox and on your calendar, once each, never by reading out who a song is by.
A station starts in under 2.5 seconds. In a load test, 1,200 concurrent stations started with a p95 of 1.49 seconds and no gaps in playback.
Stack
Rust on Cloudflare Workers and Durable Objects — auth, memory, the episode producer and the radio all run at the edge, with no container and no server of my own. Native apps on both platforms: SwiftUI on iOS, Kotlin on Android.