RSS ist für mich immer noch der beste Weg, um bei Nachrichten und Blogs auf dem Laufenden zu bleiben: kein Algorithmus, der entscheidet, was ich sehe, sondern einfach alle neuen Artikel in chronologischer Reihenfolge. Die meisten Feed-Reader sind mir aber entweder zu überladen oder brauchen gleich einen eigenen Datenbankserver. Darum habe ich mit PyNewsAggregator einen eigenen gebaut.
Konfiguriert wird alles in einer einzigen YAML-Datei - es gibt bewusst keine Einstellungen in der Oberfläche. Pro Feed kann man das Abfrageintervall festlegen, und mit globalen oder feedspezifischen Filtern (Text oder Regex) lassen sich uninteressante Schlagzeilen ausblenden. Mit regelbasierten Kategorien wie Tech, Security oder Sport kann man die Timeline filtern, eine ganze Kategorie als gelesen markieren oder sie komplett ausblenden.
Die Timeline zeigt die neusten Artikel zuoberst und lädt beim Scrollen automatisch nach. Ein Klick öffnet den ganzen Artikel direkt in der Liste. Wann ein Artikel als gelesen gilt, ist einstellbar: beim Aufklappen, beim Vorbeiscrollen oder schon beim Laden. Eine Markierung “Du warst hier” zeigt, wo man beim letzten Mal aufgehört hat, und ein Banner meldet in Echtzeit, wenn neue Artikel eingetroffen sind. Den Lesestand kann man über ein Token zwischen mehreren Geräten synchronisieren. Tracking-Pixel in den Feeds werden übrigens automatisch entfernt.
Das Ganze läuft als Docker-Container mit SQLite, ist für Mobilgeräte optimiert (natürlich im Dark Mode) und lässt sich als App auf dem Handy installieren. Den Code gibt es auf GitHub (MIT-Lizenz).