🔀 Sympli RSS Fusion : quand RSS Fusion se ballade à poils

🔀 Sympli RSS Fusion : quand RSS Fusion se ballade à poils

  • 23/04/2026

Il y a bien longtemps, j'avais pondu un pseudo agrégateur de flux RSS capable de fusionner plusieurs sources en un seul flux, avec la possibilité de filtrer ce qui me saoule : un mot clé qui revient trop souvent, une source qui publie 40 articles par jour dont 2 m'intéressent. Bon. J'avoue que le copain Liandri en avait finalement plus besoin que moi ! 

Les solutions existantes ? Soit trop compliquées, soit trop dépendantes d'un compte quelque part, soit les deux.

Il y a quelques années, j'avais pondu une version brouillon sur Framagit qui faisait le job… en théorie. En pratique c'était assez dégueulasse. Ça tournait sur du PHP avec une approche récupérée sur une vieille version d'un CMF, et avec du JS bricolé à la va-vite. Ça marchait - un peu, parfois - mais personne d'autre que moi ne pouvait s'en servir raisonnablement. Ah, si. Peut-être Liandri. Encore lui.

Depuis, j'avais refait une version propre dans un autre écosystème, pour un usage plus "professionnel". Un truc en SaaS avec machin-truc en ligne : https://www.rss-fusion.fr Elle fonctionne pas trop mal et compte tenu du nombre d'utilisateurs réguliers, elle semble correspondre à quelques besoins.

Mais c'est con d'être sensible à des dynamiques de décentralisation de services et de monter un truc pareil.

Alors je l'ai réécrite de zéro, en standalone, sans dépendance, pour que n'importe qui puisse l'auto-héberger en deux commandes, KISS

C'est Sympli RSS Fusion.

Ce que ça fait concrètement

Tu crées un flux master. Tu lui colles des sources RSS ou Atom. À chaque source, tu peux ajouter deux types de règles :

  • Des black words : si le mot apparaît dans le titre, la description ou le contenu ; l'article disparaît. Fini le bruit.
  • Des star words : si le mot est trouvé, l'article remonte en haut du flux. Pas juste trié par date ; trié par pertinence pour toi.

À la fin, tu récupères une URL unique et secrète. Tu la colles dans ton agrégateur RSS préféré. C'est tout.

Pas de compte. Pas de mot de passe. Juste une URL de 48 caractères hexadécimaux que tu gardes précieusement. Perdu l'URL, perdu l'accès : et c'est un choix assumé. Si tu veux reprendre la main sur un flux existant, tu colles son URL dans l'interface et elle te renvoie directement sur la page de gestion.

Les trucs qui m'ont pris plus de temps que prévu

La prévisualisation en temps réel. Quand tu saisis l'URL d'une source et que tu définis tes filtres, l'interface te montre directement les articles qui passeraient, avec les règles appliquées. Ça a l'air con dit comme ça, mais sans ça, configurer des filtres c'est un peu du billard en aveugle.

Le star scoring. Les star words ne servent pas juste à "marquer" un article : ils sont cumulatifs. Un article qui contient trois de tes mots importants remontera plus haut qu'un article qui n'en contient qu'un. Le tri final fait passer le score avant la date. C'est un petit truc qui change vraiment l'usage.

L'import/export OPML et JSON. Parce que si tu changes d'instance ou que tu veux partager ta config, il faut pouvoir le faire proprement. L'OPML c'est le format standard du monde RSS, et le JSON c'est pour les gens qui veulent scripter.

D'autres bricoles. Genre :
La personnalisation des thèmes : des petits fichiers CSS ici et là. Il y a 4 thèmes proposés. En créer d'autres se limite à une simple création de feuille de style et une activation dans les paramètres.
Le support multilingue: pour l'instant EN/FR mais rajouter d'autres supports se résume aussi à un "clic/edit".

Le choix qui fait débat (ou pas) : zéro Composer

Le projet tourne sans aucune dépendance Composer, ni NPM, ni autre truc : le parsing RSS/Atom est fait en PHP simple avec DOMDocument et DOMXPath, qui gèrent nativement les deux formats. La base de données c'est du SQLite. Le cache c'est des fichiers plats.

Ça veut dire que l'installation ressemble à ça :

 cp .env.example .env
 php -S 127.0.0.1:8080 -t public

Et c'est bon. Aucun composer install, aucun npm, rien.

C'est un choix de confort, par exemple pour l'hébergement mutualisé où on ne maîtrise pas toujours l'environnement. Et franchement, pour ce cas d'usage précis, ce serait ajouter de la complexité pour le principe.

Donc en résumé, ça se greffe sur un environnement LAMP classique, mutualisé ou non. Ou même uniquement sur n'importe quoi où PHP 8.1+ peut s’exécuter, pour peu que les extensions classiques soient activées (pdo_sqlite, sqlite3, dom - DOMDocument / DOMXPath, libxml et json) et qu'il soit possible de paramétrer le répertoire racine dans /public.

Une démo en ligne

Si tu veux tester avant d'installer, il y a une instance publique qui tourne :

🔗 sympli.rss-fusion.com

Tu peux créer des flux, jouer avec les filtres, récupérer ton URL RSS. C'est ouvert, gratuit. L'idée c'est exactement ça : quelqu'un qui ne veut pas s'auto-héberger peut utiliser l'instance d'un autre. Quelqu'un qui préfère garder ses données chez lui peut déployer le sien.

Finalement, un simple retour aux sources de RSS Fusion 🤘

🔗 GreenEffect/Sympli-RSS-Fusion sur GitHub

Screenshot de Sympli RSS Fusion

Le projet est sur GitHub, sous licence CC BY-NC-SA 4.0. Les PR sont les bienvenues !

0 commentaire(s)

Aucun commentaire pour l'instant. Soyez le premier a commenter.

Laisser un commentaire

0 / 1000