Skip to main content

Reader

Miniflux + RSSHub + NextFlux.

URLs

ServiceExternalInternal (for Miniflux)
Minifluxhttps://miniflux.augustin.ai
NextFluxhttps://nextflux.augustin.ai
RSSHubhttps://rsshub.augustin.aihttp://rsshub:1200/<route>

Adding Feeds

  1. Site has RSS/Atom → Add the feed URL directly in Miniflux
  2. Site supported by RSSHub → Find the route at https://docs.rsshub.app, add http://rsshub:1200/<route> in Miniflux
  3. No feed exists → Add a scraper route (see below), redeploy, subscribe via http://feed-scraper:3001/<name>

Feed Scraper

A sidecar container (./scraper/server.js) that scrapes websites and serves RSS XML for Miniflux to poll. Each site gets its own path. Current scrapers:
PathSource
/hubermanlabHuberman Lab Newsletter
/cbinsights-aiCB Insights AI Research
/kindlemodshelfKindleModShelf Announcements
To add a new site:
  1. Inspect the target site’s HTML for: listing page structure, pagination, content selectors
  2. Add a handler for a new path in server.js
  3. Parse listings for titles/dates/links, handle pagination, extract article content
  4. Wrap in RSS XML
  5. Rebuild and redeploy: docker compose -f reader/compose.yaml build && docker compose -f reader/compose.yaml up -d

Architecture

miniflux.augustin.ai → Traefik → miniflux:8080
nextflux.augustin.ai → Traefik → nextflux:3000
rsshub.augustin.ai   → Traefik → rsshub:1200

miniflux → miniflux-db (postgres, internal reader network)
miniflux → rsshub:1200 (feed generation)
miniflux → feed-scraper:3001 (custom scraped feeds)