feat: squelette de l'extension Read More (config, i18n)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Vincent BourdonandClaude Opus 5.5 committed 2026-11-06 18:57:47 +01:00
1 parent bb8d03eaab
commit d8b334767d
10 files changed
+193

No files matched your search

+64
View File
@@ -0,0 +1,64 @@
# 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. Dans le volume monté sur
`/var/www/FreshRSS/extensions` :
```sh
docker exec -it <conteneur-freshrss> sh -c \
'cd /var/www/FreshRSS/extensions && git clone https://git.siteop.biz/vincentb99/freshrss-read-more.git'
```
(ou cloner depuis l'hôte dans le dossier du volume). Puis dans FreshRSS :
*Configuration → Extensions → Read More → activer*.
### Mise à jour
```sh
cd /var/www/FreshRSS/extensions/freshrss-read-more && git 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