Meine eigenen Erweiterungen für FreshRSS
Vor gut drei Wochen hab ich von meinem Dilemma mit Inoreader erzählt und wie mich das wieder ein Stück mehr in Richtung „hoste einfach selbst“ geschoben hat. Heißt auch, dass ich gut drei Wochen das Konstrukt nun produktiv im Einsatz hab, sodass ich sagen kann, dass das tatsächlich recht gut (für mich) funktioniert. Und ganz im Sinne von „willst du, dass es genau so wird, wie du willst, dann mach es selbst“ hab ich noch an zwei Stellschrauben geschraubt, um es noch ein bisschen mehr auf meinen Workflow anzupassen – was dann vielleicht auch eine Inspiration für andere ist.
Denn was ich bei Inoreader mochte, war das Vergeben von Tags, damit ich dann Beiträge gesondert weiterverarbeiten kann. Zum einen, um sie in Ruhe zu lesen, zum anderen damit bestimmte Infos in ein Google Doc geschrieben werden. Win-Compilation lässt grüßen und natürlich sollte das automatisch passieren. Also hab ich mir dafür zusammen mit Codex eine kleine Erweiterung geschrieben:
xExtension-N8nWebhook
Der Name sagt eigentlich schon alles: Die Extension ermöglicht, dass bestimmte Infos eines Beitrags, die ein bestimmtes Label bekommen, an n8n gesendet werden. Wer n8n nicht kennt: eigentlich sowas wie IFTTT, nur das man das auch selbst hosten kann und damit sich die monatlichen Gebühren spart. Und gefühlt ist das auch eine ganze Ecke flexibler, weil man eigentlich alles in einem n8n-Workflow verwursten kann.
Heißt in meinem konkreten Fall: Bekommt ein Beitrag ein bestimmtes Label, werden automatisch Beitragstitel, URL zum Beitrag und ein paar statische Infos an ein ganz bestimmtes Google Doc gesendet. Dabei ist das ganze Ding so geschrieben, dass man in der config.php sowohl die URL zum n8n-Webhook als auch Token und die Labels, die den Bums auslösen sollen, frei definieren kann. Oder anders gesagt: könnte sich jeder direkt so selbst installieren. Bittegerne! (und ja, ich weiß, dass es da auch bereits eine offizielle Extension gibt, die irgendwas mit Webhooks macht – hab ich a) zu spät gesehen und war mir dann b) auch einfach egal, weil hatte ja nun was eigenes)
Was ich ebenfalls bei Inoreader mochte, war der schnelle Klick für eine Übersetzung. Es ist nicht so, dass ich dem Englischen nicht mächtig wäre, aber es gibt Situationen, wo ich dann doch die deutsche Version bevorzuge. Kognitive Last und so. Also hab ich mir auch dafür zusammen mit Codex eine kleine Erweiterung geschrieben:
xExtension-Translate
Hierfür braucht es neben der Extension selbst noch irgendwo LibreTranslate als Server. Ich hab auch ein bisschen mit lokalen LLM herumgespielt, genauso wäre auch eine direkte Anbindung an OpenAI und Co. möglich. Oder auch direkt Google Translate oder DeepL. Aber Prämisse für mich war, dass es keine Kosten verursachen soll, aber dennoch okay schnell ein Ergebnis zurückliefert. Ersteres wird bei externen Services schwierig bis unmöglich, Letzteres war mit lokalen Modellen nicht wirklich zufriedenstellend – also eben LibreTranslate.
Die Extension selbst kommt mit zwei simplen Settings: einmal für die Angabe der URL zum eigenen LibreTranslate-Server und eine Möglichkeit, ein eigenes Tastaturkürzel zu vergeben. Wahlweise sitzt aber in der Navigation selbst ein Icon, das man einfach anklicken kann.
Die Übersetzung selbst wird über den Original-Text gelegt, Links und ähnliches bleiben dabei erhalten. Oder anders gesagt: Im Prinzip genau so wie bei Inoreader, nur dass die Links nicht erhalten.
Auch wenn nicht selbst gecodet, bin ich doch ein bisschen stolz drauf und wenn es mir hilft, anderen vielleicht auch. Wer das ausprobieren will, schaut einfach hier vorbei und packt sich den Bums in sein Extension-Verzeichnis. Und für ganz Faule – wie mich – gibt es auch ein deploy-Script, dass das übernimmt.
