OpenRss
Je l'ai construit parce que les autres ne me convenaient pas. C'est maintenant l'outil que j'ouvre le matin.
RSS n'est pas mort. Les développeurs qui lisent des blogs, suivent des changelogs, regardent des newsletters techniques — ils utilisent encore RSS. C'est le seul moyen de lire ce que tu veux lire, sans algorithme, sans publicité, sans engagement forcé.
Le problème : les lecteurs RSS existants me frustraient. Trop lourds, trop orientés "gérer des milliers de sources", trop peu adaptés à un usage simple. Je voulais quelque chose de minimaliste.
J'ai construit OpenRss un week-end.
Ce que je voulais
Un endroit où voir mes 10-15 sources importantes. Pas de gamification, pas de compteur d'articles non lus qui te culpabilise, pas de recommandations. Juste les articles, dans l'ordre, de la journée.
La possibilité d'ajouter et retirer des sources en quelques clics, sans créer de compte, sans exporter des OPML, sans configuration compliquée.
Que ça marche dans le navigateur, sans installation.
Ce que j'ai appris en le construisant
Le parsing RSS côté client ne fonctionne pas — CORS bloque tout. J'ai dû créer deux endpoints API server-side pour que le navigateur ne fasse des requêtes qu'à mon propre serveur.
useSyncExternalStore est l'API React qu'il faut pour synchroniser localStorage avec le rendu sans erreur d'hydratation. J'aurais pu passer à côté avec un useEffect bancal. Prendre le temps de chercher la bonne solution m'a appris quelque chose que j'utilise maintenant dans d'autres projets.
Ce que j'aurais fait différemment
La gestion des erreurs réseau. Certains feeds tombent parfois — serveurs qui redémarrent, URLs qui changent. OpenRss affiche juste "erreur" sans contexte. Je veux améliorer ça pour distinguer un timeout d'un feed qui a changé d'URL.
La détection automatique de feeds. Si tu donnes l'URL d'un blog, OpenRss devrait chercher automatiquement le <link rel="alternate"> dans le HTML pour trouver l'URL du feed RSS. C'est sur la liste.
Pourquoi je l'utilise plutôt qu'autre chose
Parce que je sais exactement comment il fonctionne. Quand quelque chose ne va pas, je sais où regarder. Et parce que le construire était la meilleure façon d'apprendre ce que j'avais besoin d'apprendre à ce moment-là.