mathieuandClaude Opus 5 383ed43227 Signaler les doublons à l'ajout d'un livre, sans jamais les refuser
Rien n'empêchait de rescanner un livre déjà catalogué. Plutôt qu'un index
unique — qui interdirait le second exemplaire, cas parfaitement légitime —
la création répond 409 avec les fiches semblables, et « confirmerDoublon »
enregistre la même saisie.

Deux critères, dont aucun n'est une clé : ISBN identique, ou clé d'œuvre
et auteur communs. La clé d'œuvre étant un préfixe de TitreNormalise, SQL
dégrossit sur la colonne indexée et l'égalité exacte se vérifie ensuite en
mémoire.

Vérifié en exécution : avertissement, retour au formulaire intact, et ajout
confirmé créant bien un second exemplaire.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-19 21:11:39 +02:00
2026-08-18 15:06:09 +02:00

MaBibli

Application de gestion de bibliothèque personnelle, self-hosted sur YunoHost.

Demande initiale

Gérer une bibliothèque personnelle (livres physiques et numériques), avec :

  • Liste des livres physiques
  • Liste des livres ebooks
  • Gestion de prêts — prêter un livre à quelqu'un, marquer comme récupéré, historique des prêts
  • Récupération automatique des infos via ISBN (titre, auteur, éditeur, couverture) — scan caméra + saisie manuelle
  • Consultation hors-ligne de la bibliothèque existante (le lookup ISBN, lui, nécessite le réseau)
  • Statuts de lecture — à lire, en cours, lu, etc.

Contraintes techniques

  • Langage : C# / ASP.NET Core
  • Frontend : Blazor WebAssembly, en PWA (installable, utilisable hors-ligne pour la consultation de la bibliothèque déjà enregistrée)
  • Scan code-barres : ZXing.Net (décodage EAN-13 en C#, pas de bibliothèque JS tierce)
  • Accès : smartphone (GSM) et PC, via navigateur
  • Multi-utilisateur : géré via le SSO de YunoHost (en-têtes SSOwat, pas d'auth custom) — collection commune au foyer, avec traçabilité de qui a ajouté chaque livre
  • Base de données : SQLite
  • Hébergement : YunoHost, en installation native (sans Docker) — packaging façon _ynh, inspiré de radarr_ynh (déploiement .NET self-contained, pas de dépendance dotnet-runtime côté système)
  • Sources ISBN : cascade BnF (SRU) puis OpenLibrary — bases libres, sans clé API, pas de dépendance à Google Books. La BnF passe en premier pour la couverture du fonds francophone. Voir CLAUDE.md pour le détail
  • Ebooks : fiches d'inventaire uniquement, les fichiers ne sont pas hébergés par l'application

Statut

Projet en tout début de structuration. Voir CLAUDE.md pour le contexte complet à destination de Claude Code.

S
Description
No description provided
Readme AGPL-3.0
6 MiB
2026-08-23 17:36:06 +02:00
Languages
C# 67.8%
HTML 25.8%
CSS 4%
JavaScript 2.2%
Dockerfile 0.2%