From a314dcfc79d4b11a754e74bb2c57329c19b0ae25 Mon Sep 17 00:00:00 2001 From: mathieu Date: Mon, 17 Aug 2026 23:16:16 +0200 Subject: [PATCH] Recueillir les idees d'interface dans IDEES.md Retours d'usage a traiter plus tard : agrandissement de la couverture au clic, statut de lecture en lecture seule dans la liste et remonte au niveau du type, affichage du format limite aux ebooks (physique par defaut), fiche en lecture seule avec bouton d'edition, regroupement des livres par auteur. Documente aussi un cas de donnee sale mesure sur l'ISBN 9782749942636 : la notice BnF colle le nom de l'auteur en fin de titre sans separateur ISBD, donc la regle de nettoyage existante ne peut pas s'appliquer. Ce n'est ni un doublon ni un defaut du parsing. Garde en fin de fichier l'idee des livres souhaites (bibliographie par auteur avec ouvrages possedes grises), hors perimetre v1, avec ses implications sur le modele de donnees. Co-Authored-By: Claude Opus 5 --- CLAUDE.md | 2 ++ IDEES.md | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 IDEES.md diff --git a/CLAUDE.md b/CLAUDE.md index 39c8b2f..46c6aba 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -2,6 +2,8 @@ Ce fichier donne le contexte complet du projet à Claude Code. Lis-le en entier avant de commencer à coder. +Voir aussi **`IDEES.md`** : améliorations identifiées mais **non encore actées**. Rien n'y fait autorité — ce fichier-ci reste la référence. + ## Objectif du projet Application self-hosted de gestion de bibliothèque personnelle, à héberger sur YunoHost, accessible depuis smartphone et PC. diff --git a/IDEES.md b/IDEES.md new file mode 100644 index 0000000..22ff925 --- /dev/null +++ b/IDEES.md @@ -0,0 +1,76 @@ +# IDEES.md — améliorations envisagées + +Ce fichier recueille les idées et corrections identifiées en cours de route, **pas encore implémentées**. Il n'a pas valeur de décision : rien ici n'est acté tant que ce n'est pas repris dans `CLAUDE.md` ou traité dans une phase. + +Le travail visuel de fond (couleurs, typographie, mise en page) est repoussé volontairement : il sera fait quand les fonctionnalités seront en place. + +--- + +## Interface — retours d'usage + +### Agrandir la couverture au clic + +Cliquer sur l'image d'un livre doit l'afficher en grand. Aujourd'hui elle est figée à la taille de la vignette. + +À prévoir : gérer le cas où il n'y a pas de couverture (le substitut à initiale ne doit pas être cliquable), et la fermeture au clic extérieur ou via Échap. + +### Statut de lecture en lecture seule dans la liste + +Actuellement les trois boutons *À lire* / *En cours* / *Lu* sont modifiables directement depuis chaque fiche du catalogue. Ils devraient être **en lecture seule** à cet endroit, et remontés **au niveau de la ligne du type de livre**. + +La modification du statut se fera alors depuis l'écran d'édition. + +### N'afficher que « Numérique » + +Le format ne doit apparaître **que pour les ebooks**. Un livre est **physique par défaut** — c'est le cas majoritaire, l'afficher partout n'apporte rien et alourdit la liste. + +Conséquence à vérifier au moment de l'implémenter : le formulaire d'ajout doit alors proposer *Physique* comme valeur par défaut sélectionnée, et non un choix vide. + +### Fiche livre en lecture seule, avec bouton « Éditer » + +Cliquer sur un livre ouvre aujourd'hui directement l'édition. Il faudrait afficher **la même page en lecture seule**, avec un bouton pour basculer en modification. + +Évite les modifications accidentelles, notamment sur mobile où l'on ouvre une fiche simplement pour la consulter. + +### Regrouper les livres par auteur + +Cliquer sur le nom d'un auteur doit afficher **tous les livres de cet auteur présents dans la bibliothèque**. + +Point d'attention : l'auteur est aujourd'hui un simple champ texte sur `Livre`, sans table dédiée. Un regroupement par égalité de chaîne fonctionnera pour l'essentiel, mais échouera sur les variantes d'orthographe (« Émile Zola » vs « Emile Zola »). À rapprocher du point sur les accents ci-dessous. + +--- + +## Qualité des données + +### Titres BnF contenant le nom de l'auteur + +**Cas constaté** — ISBN `9782749942636` : + +``` +dc:title = "Le plus grand défi de l'histoire de l'humanité : face à la + catastrophe écologique et sociale (Nouvelle éd. augmentée) + Aurélien Barrau" +dc:creator = "Barrau, Aurélien (1973-....). Auteur du texte" +``` + +Le nom de l'auteur est collé en fin de titre **sans le séparateur ISBD ` / `**. La règle de nettoyage documentée dans `CLAUDE.md` ne peut donc pas s'appliquer : il n'y a pas de ponctuation à couper. Ce n'est ni un doublon, ni un défaut de notre parsing — la notice est sale à la source. + +Correction envisagée : une fois `dc:creator` nettoyé, si le titre **se termine** par ce nom exact, le retirer. Heuristique volontairement stricte (comparaison en fin de chaîne uniquement) pour ne pas mutiler les titres qui contiennent légitimement un nom de personne. + +### Recherche insensible aux accents + +« Emile » ne trouve pas « Émile ». Gênant sur un fonds francophone, et lié au regroupement par auteur ci-dessus. + +--- + +## Pour plus tard — livres souhaités + +Idée de fonctionnalité, **hors périmètre v1**, à ne pas implémenter sans décision explicite. + +Pouvoir suivre les livres qu'on aimerait acquérir. Le déclencheur serait le regroupement par auteur : en cliquant sur un auteur déjà présent dans la bibliothèque (exemple donné : Bernard Werber), afficher **sa bibliographie complète**, avec les ouvrages déjà possédés grisés — et la possibilité de marquer les autres comme souhaités. + +Ce que ça impliquerait, à évaluer le moment venu : + +- Une source pour les bibliographies par auteur. La BnF sait interroger par auteur, mais l'ordre et l'exhaustivité restent à vérifier ; OpenLibrary expose les œuvres liées à un auteur. +- Un moyen d'identifier un auteur de façon stable, donc probablement une **table `Auteur`** plutôt que le champ texte actuel — c'est le changement de modèle le plus lourd de cette idée. +- Un statut « souhaité » distinct des statuts de lecture existants, ou une entité séparée pour ne pas mélanger inventaire et liste d'envies.