--- title: CommaFeed created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, feed-reader, rss, old-reader, java, angular, self-hosted] confidence: high contested: false sources: - https://selfh.st/apps/?tag=Feed+Readers - https://github.com/Athou/commafeed - https://www.commafeed.com/ --- # đŸ—žïž CommaFeed > Fork moderne de The Old Reader — agrĂ©gateur de flux RSS/Atom en Java/Angular avec une UI proche de Feedly. ## 📋 Informations GĂ©nĂ©rales | Attribut | Valeur | |----------|--------| | **Nom** | CommaFeed | | **Slug** | app-commafeed | | **Description** | Fork open-source de The Old Reader, réécrit en Java 17 + Angular, UI moderne multi-utilisateurs | | **Site officiel** | https://www.commafeed.com/ | | **Repository** | https://github.com/Athou/commafeed | | **Stars** | 3 980 ⭐ | | **Licence** | Apache-2.0 | | **Langage principal** | Java / Angular | | **CatĂ©gorie** | Feed Reader | | **Tags** | [catalogue, feed-reader, rss, old-reader, java, angular, self-hosted] | ## 📝 Description CommaFeed est un fork maintenu par Athou (AurĂ©lien HervĂ©) Ă  partir du code de The Old Reader, l'ancĂȘtre des lecteurs type Google Reader. Le projet a Ă©tĂ© largement réécrit pour passer Ă  Java 17 cĂŽtĂ© backend, avec un frontend Angular moderne et un look trĂšs inspirĂ© de Feedly. C'est l'un des rares lecteurs auto-hĂ©bergeables Ă  offrir une expĂ©rience utilisateur aussi proche des services SaaS. Fonctionnellement, CommaFeed supporte les flux RSS, Atom et JSON Feed, l'API Google Reader (compatibilitĂ© Reeder, NetNewsWire, FeedMe, etc.), le marquage lu/non-lu, les catĂ©gories, les marque-pages, la recherche full-text, l'export/import OPML, et un systĂšme d'authentification simple (login/mot de passe avec hash bcrypt). La base utilisĂ©e est H2 par dĂ©faut, mais PostgreSQL est recommandĂ© en production. Cas d'usage typique : utilisateur qui veut une UI Feedly-like sans dĂ©pendre du cloud, multi-utilisateurs, et prĂȘt Ă  fournir un peu de RAM Ă  un backend Java (~512 Mo-1 Go). Limites : pas d'OAuth/SSO natif, pas d'extensions, projet mono-mainteneur (le rythme de release est irrĂ©gulier). À considĂ©rer comme une alternative sĂ©rieuse Ă  [[app-freshrss]] pour qui prĂ©fĂšre Java Ă  PHP. ## 🚀 Installation ### Via Docker (recommandĂ©) ```yaml # docker-compose.yml version: "3.8" services: commafeed: image: athou/commafeed:latest container_name: commafeed restart: unless-stopped ports: - "8082:8082" environment: JAVA_TOOL_OPTIONS: "-Xmx512m" COMMAFEED_DATABASE_DRIVER: org.postgresql.Driver COMMAFEED_DATABASE_URL: jdbc:postgresql://db/commafeed COMMAFEED_DATABASE_USERNAME: commafeed COMMAFEED_DATABASE_PASSWORD: ChangeM3_COMMA COMMAFEED_USERS_CREATIONENABLED: "true" volumes: - ./data:/app/data depends_on: - db db: image: postgres:16-alpine container_name: commafeed-db restart: unless-stopped environment: POSTGRES_DB: commafeed POSTGRES_USER: commafeed POSTGRES_PASSWORD: ChangeM3_COMMA volumes: - ./pgdata:/var/lib/postgresql/data ``` ### Installation manuelle TĂ©lĂ©charger le JAR `fat-jar` depuis la page Releases GitHub, exĂ©cuter avec `java -jar commafeed-X.Y.Z.jar` (Java 17+ requis). Un fichier `config.yml` peut ĂȘtre fourni en argument pour surcharger les variables d'environnement. Le `data/` contient la base H2 par dĂ©faut ; basculer en PostgreSQL nĂ©cessite de configurer les propriĂ©tĂ©s `COMMAFEED_DATABASE_*` avant le premier dĂ©marrage. ## ⚙ Configuration - **Premier utilisateur** : `COMMAFEED_USERS_CREATIONENABLED: "true"` permet l'auto-inscription du premier compte, Ă  dĂ©sactiver aprĂšs crĂ©ation de l'admin. - **Base de donnĂ©es** : H2 par dĂ©faut (fichier local, parfait pour tester), PostgreSQL/MySQL pour la production. - **API Google Reader** : activĂ©e par dĂ©faut, fournit un token dans Profil → API. - **Throttling de scraping** : `COMMAFEED_HTTP_CLIENT_TIMEOUT` et `COMMAFEED_HTTP_THREADS` pour ajuster la collecte de flux. - **ThĂšme** : clair, sombre, sĂ©pia — bascule cĂŽtĂ© UI. ## 🔗 Alternatives - [[app-freshrss]] — Concurrent PHP plus extensible, plus simple Ă  installer, plus de tags/filtres. - [[app-miniflux]] — Concurrent Go ultra-lĂ©ger, mono-utilisateur « friendly », sans Java ni Angular. - [[app-newsblur]] — Concurrent Python avec ML, mais plus lourd et plus complexe Ă  auto-hĂ©berger. - [[app-feedbin]] — Ruby on Rails, UX trĂšs propre mais projet payant en SaaS. - [[app-yarr]] — Go minimaliste, mono-utilisateur, sans web UI aussi riche. - [[app-nextcloud-news]] — Module Nextcloud, idĂ©al en environnement Nextcloud existant. - **Feedly** (propriĂ©taire SaaS) — Source d'inspiration directe de l'UI CommaFeed. - **Inoreader** (propriĂ©taire SaaS) — Concurrent SaaS avec rĂšgles et filtres avancĂ©s. ## 🔒 SĂ©curitĂ© - HTTPS obligatoire via [[app-traefik]] ou [[app-caddy]]. - DĂ©sactiver `COMMAFEED_USERS_CREATIONENABLED` aprĂšs crĂ©ation du premier admin pour Ă©viter l'inscription libre. - Changer le mot de passe admin et utiliser un mot de passe fort (>= 16 caractĂšres). - Configurer `X-Forwarded-For` / `X-Real-IP` cĂŽtĂ© reverse proxy pour que les logs IP soient corrects. - Surveiller les mises Ă  jour Java et la couche Hibernate/JPA — la stack Java historique a souvent des CVE. ## 📚 Ressources - Site officiel : https://www.commafeed.com/ - Repository : https://github.com/Athou/commafeed - Documentation : https://github.com/Athou/commafeed#readme - Releases : https://github.com/Athou/commafeed/releases - DĂ©mo publique : https://www.commafeed.com/demo (suspendu parfois) ## 🔗 Pages LiĂ©es - [[cat-feed-reader]] (catĂ©gorie parente) - [[app-freshrss]] — Concurrent PHP plus extensible - [[app-miniflux]] — Concurrent Go minimaliste - [[app-newsblur]] — Concurrent Python avec ML - [[app-feedbin]] — Solution Ruby on Rails - [[app-yarr]] — Lecteur Go minimaliste - [[app-nextcloud-news]] — Module Nextcloud - [[recettes-docker-compose]] — Templates Compose - [[securisation-home-lab]] — Bonnes pratiques