# Read More — extension FreshRSS Replie les articles du **mode lecture** à une hauteur réduite, avec un bouton **« Lire plus »** qui déroule l'article complet sur place. Objectif : parcourir rapidement une liste d'articles (newsletters de veille, sur smartphone notamment) et passer au suivant d'un geste quand le sujet n'intéresse pas. Le passage automatique en « lu » au défilement continue de fonctionner : un article replié est simplement plus court, il est donc marqué lu plus tôt. ## Prérequis - FreshRSS **1.30.4** ou plus récent. - Option FreshRSS *Configuration → Lecture → Marquer un article comme lu… « au défilement de la page »* activée (sinon rien n'est marqué lu au défilement, avec ou sans cette extension). ## Installation (Docker) Le dépôt est directement le dossier de l'extension. L'image officielle `freshrss/freshrss` ne contient pas `git` : on clone **depuis l'hôte** dans le volume monté sur `/var/www/FreshRSS/extensions`. **Volume monté depuis un dossier de l'hôte** (`./extensions:/var/www/FreshRSS/extensions`) : ```sh git clone https://git.siteop.biz/vincentb99/freshrss-read-more.git ./extensions/freshrss-read-more ``` **Volume Docker nommé** (ex. `freshrss_extensions`) : ```sh docker run --rm -v freshrss_extensions:/ext alpine/git \ clone https://git.siteop.biz/vincentb99/freshrss-read-more.git /ext/freshrss-read-more ``` Les fichiers doivent être lisibles par le serveur web du conteneur (c'est le cas par défaut d'un clone). Puis dans FreshRSS : *Configuration → Extensions → Read More → activer*. ### Mise à jour Même principe, depuis l'hôte : ```sh git -C ./extensions/freshrss-read-more pull # ou, volume nommé : docker run --rm -v freshrss_extensions:/ext alpine/git -C /ext/freshrss-read-more pull ``` puis recharger la page dans le navigateur. ## Réglage Icône engrenage de l'extension : **hauteur repliée** en pixels (250 par défaut, entre 100 et 2000). Un article dont le contenu fait moins de 1,5 × cette hauteur n'est pas replié. ## Comportement - Mode lecture uniquement ; vues normale et globale inchangées. - « Lire plus » déplie sur place, sans recharger ni modifier l'état lu/non lu. - Les articles chargés au fil du défilement sont repliés aussi. ## Développement ```sh npm install npm run test:unit # tests unitaires (jsdom) bash tests/e2e/setup.sh # FreshRSS 1.30.4 de test sur http://localhost:8080 npx playwright install chromium npm run test:e2e # tests bout-en-bout bash tests/e2e/setup.sh --down # arrêt et nettoyage ``` ## Licence MIT