I'll be honest: I paid for Readwise for years and loved the reading experience. So when I started building my own reader, I borrowed its homework — the desktop layout uses Readwise-style typography and reading flow as the reference point. Then I got TTS and AI podcasts working, and quietly cancelled my subscription. Oops 😄
This is Readaria, an AGPLv3-licensed RSS reader. There's a hosted version, but this post is about the self-hosted one. Everything runs from a single docker compose up -d.
What it does
- RSS/Atom reading with OPML import/export, scheduled or on-demand refresh, saved articles, reading history
- Article narration via server-generated audio (Google Cloud TTS, Azure Speech, Azure OpenAI TTS, or any OpenAI-compatible endpoint; browser Web Speech as a fallback) — queue up articles and listen on your phone like a playlist
- AI podcasts: one click turns recent articles into a narrated briefing with multiple voices, or enable the daily scheduled job
- AI assistance: article summaries and podcast Q&A through an OpenAI-compatible API (bring your own key, with OpenRouter fallback)
- Mobile + desktop: an installable Vue PWA with Media Session (lock-screen controls), plus a desktop reading layout inspired by Readwise
- Optional RSSHub routes, including compatible WeChat Official Account routes
How it compares
| Readaria | FreshRSS | Miniflux | |
|---|---|---|---|
| TTS / listen | ✅ server-side, multi-provider | ❌ | ❌ |
| AI podcast from feeds | ✅ scheduled or on-demand | ❌ | ❌ |
| AI summaries / Q&A | ✅ BYOK | ❌ | ❌ |
| Reading experience | Readwise-inspired desktop layout | classic web UI | minimal UI |
| Mobile | installable PWA | PWA / third-party apps | third-party apps |
| Self-host | one-command Docker | Docker | single binary / Docker |
| License | AGPLv3 | AGPLv3 | Apache 2.0 |
FreshRSS and Miniflux are excellent at what they do — this is not a takedown. Readaria is for a specific situation I kept hitting: my reading backlog had quietly become a listening backlog.
My daily drive is 2–3 hours, and I wanted that time back — to catch up on news and on the authors I follow. Readwise and Instapaper are great at saving articles, but none of the tools I tried would turn followed authors' new posts into a playlist, let alone a podcast that discusses them. So I built it.
If any of this sounds like you — the commute, the dog walk, the "I'll read it later" pile that mostly delivers guilt and eye strain — that's exactly the use case. (Unexpected side effect: it genuinely helps with my ADHD. A queue I can listen to is a queue I actually finish.)
Quick start
git clone https://github.com/Blacksheeppy123/readaria.git
cd readaria
cp .env.example .env
# set a database password and strong SECRET_KEY / JWT_SECRET_KEY values
docker compose up -d
Prefer to try before self-hosting? https://demo.readaria.com has pre-generated podcasts and doesn't require signup to browse.
Notes for self-hosters
- TTS keys are optional per provider; without any key, browser Web Speech still works.
- The AI podcast job is off by default — enable the schedule only if you want it.
- OPML import means migrating from any other reader takes one file.
Roadmap-ish
Issues and PRs welcome. Things I'm chewing on: better podcast script control, more TTS providers, and an API surface so agent tooling can subscribe and listen on your behalf.
Top comments (0)