Les IntersectionObserver utilisaient root: null (viewport) au lieu du conteneur de scroll réel (.infinite-reader). Le rootMargin de 1000px était donc calculé par rapport au viewport, causant un montage/démontage des pages à des moments imprécis et des sauts de layout lors du scroll vers le haut. Supprime également scroll-behavior: smooth sur le conteneur, qui entrait en conflit avec le scroll anchoring du navigateur lors des corrections de position, donnant l'impression que le scroll redescendait tout seul.
Mangarr
Ce projet est un fork du template Symfony disponible à dunglas/symfony-docker, adapté aux besoins. Il intègre Symfony 7.0.2 et est configuré pour fonctionner avec Docker, offrant une mise en place rapide et efficace pour le développement.
Prérequis
Avant de commencer, assurez-vous que les outils suivants sont installés sur votre machine :
- Docker
- Makefile
Installation
Pour mettre en place le projet, suivez ces étapes :
-
Clonez le dépôt du projet :
git clone git@git.homelab.nestor-server.fr:2222/colgora/Mangarr.git -
Copiez le fichier
.env.exampleen.env:cp .env.example .env -
Modifiez les credentials dans le fichier
.envselon vos besoins. -
Lancez l'installation des dépendances et la configuration du projet :
make install
Si vous rencontrez des problèmes de droits sur le projet, exécutez :
make fix-permissions
Utilisation
Pour démarrer le projet, utilisez :
make start
Pour arrêter le projet, utilisez :
make stop
Pour voir d'autres commandes utiles, vous pouvez lancer :
make help
Composants
Le projet comprend les technologies et outils suivants :
- Symfony 7.0.2 : Framework PHP pour la construction d'applications web.
- PostgreSQL 16 : Système de gestion de base de données relationnelle.
- Caddy : Serveur web moderne, sécurisé et facile à utiliser.
- FrankenPhp : Environnement d'exécution pour applications PHP.
- phpmd (PHP Mess Detector) : Outil d'analyse statique de code PHP.
- php-cs (PHP CodeSniffer) : Outil pour détecter les violations de standards de codage PHP.
Administration de la Base de Données
Admirer, équivalent de PhpMyAdmin, est disponible sur le port 8080 pour la gestion de la base de données. Les credentials sont spécifiés dans le fichier .env. Utilisez database comme nom de serveur, qui correspond au nom du conteneur Docker de la base de données.