samiulhossain
04

News Router

hosted · 2026

I got sick of six news tabs and a feed that never ends. This runs on my server, pulls RSS, and hands me a morning edition.

Problem

Every news app is ads, ranking, and infinite scroll. I wanted something that lives in my house, reads plain RSS, and then shuts up.

What I built

A FastAPI box polls feeds, dedupes stories, and files them into topics I set. The SvelteKit reader shows the last twelve hours as an edition. You finish it and you're done. Docker Compose to stand it up, ntfy if I want a ping at 7am, more than one account so it's not just me. Nothing leaves the machine.

Highlights

  • RSS/Atom ingest with dedupe and parallel polling
  • Topics and keyword routing, not a black-box feed
  • 12-hour edition instead of infinite scroll
  • Docker Compose + optional ntfy morning/evening push
news-router/stack.toml

# news-router - household RSS box

lang = "python"

api = "fastapi, sqlalchemy"

ui = "sveltekit"

ingest = "rss / atom, parallel poll, dedupe"

read = "12h edition, not a feed"

ship = "docker compose"

push = "ntfy morning + evening"

 

# last pull 07:12 CBC housing starts, GTA