mathieuandClaude Opus 5 d454e41c36 Restaure les vraies URL, et documente la production d'une copie publique
Pendant du commit du paquet. Les passages qui PARLAIENT du placeholder
annoncaient desormais la vraie URL comme etant un placeholder : ils sont
reecrits pour dire ce qui est.

docs/publier-une-version.md porte maintenant la marche a suivre pour produire
une copie publique — depot neuf sans historique, URL neutralisees, identite a
revoir — avec le rm -rf .git AVANT le git init : un git clone ne conviendrait
pas, l'historique portant les URL reelles dans chaque ancien commit.

CLAUDE.md consigne l'erreur et la regle qui en sort : on anonymise une copie,
jamais l'original.

626 tests au vert.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 14:22:50 +02:00

MaBibli

Gestion de bibliothèque personnelle, auto-hébergée, pensée pour un foyer. Catalogue, prêts, scan de code-barres, consultation hors-ligne.

  • Catalogue des livres physiques et des ebooks — fiches uniquement, aucun fichier n'est hébergé. Revues et séries ont leurs propres fiches.
  • Prêts — à qui, depuis quand, et l'historique complet.
  • Scan ISBN au code-barres depuis le téléphone, ou saisie manuelle, avec pré-remplissage du titre, de l'auteur, de l'éditeur et de la couverture.
  • Statuts de lecture personnels — chacun sa progression, sur une collection commune.
  • Liste d'envies personnelle, exportable en .txt et .csv.
  • Consultation hors-ligne — PWA installable ; la bibliothèque reste consultable et cherchable sans réseau.

Les métadonnées viennent de la BnF puis d'OpenLibrary, deux sources libres et sans clé d'API. Aucune dépendance à Google Books.

Documentation

Document Répond à Pour qui
docs/installer.md Comment je l'héberge ? qui installe, sur YunoHost ou ailleurs
docs/publier-une-version.md Comment je sors une version ? qui maintient le projet
docs/architecture.md Pourquoi le code est ainsi ? qui veut comprendre ou contribuer
mabibli_ynh/doc/ADMIN.md Où sont les données, qui a accès ? l'administrateur, après installation

CLAUDE.md porte le contexte complet et l'historique des décisions, avec leurs mesures — y compris les raisonnements qui se sont révélés faux, gardés exprès pour ne pas les reconduire. IDEES.md recueille les pistes non actées.

En bref

Trois projets .NET, un seul processus en production : le client Blazor WebAssembly est compilé en fichiers statiques que l'API sert elle-même.

MaBibli.Client  ─┐
MaBibli.Shared  ─┼──►  dotnet publish MaBibli.Api  ──►  un service systemd
MaBibli.Api     ─┘         (self-contained)             sur 127.0.0.1
Backend C# / ASP.NET Core, .NET 10
Frontend Blazor WebAssembly, en PWA
Base SQLite + EF Core
Scan zbar compilé en WebAssembly (LGPL-2.1)
Authentification SSO YunoHost, via les en-têtes SSOwat — pas d'auth propre
Hébergement YunoHost, installation native (sans Docker)

Trois contraintes ne se négocient pas : x86_64, HTTPS (sans quoi le scan caméra ne s'ouvre jamais) et un domaine entier, pas un sous-chemin. Le pourquoi est dans docs/architecture.md.

Démarrer

dotnet build && dotnet test
dotnet run --project MaBibli.Api

L'API sert aussi le client compilé : une seule commande suffit.

Ce dépôt porte les URL du serveur de son auteur

https://git.akbar.nohost.me/mathieu/… — c'est le dépôt de travail, et il doit rester opérationnel. Une seule ligne les commande toutes : depot_code, en tête de mabibli_ynh/build/publier.sh.

Pour en tirer une copie publique destinée à des tiers, la marche à suivre — dépôt neuf sans historique, URL neutralisées — est dans docs/publier-une-version.md.

⚠️ Depuis la 0.5.0, aucune base antérieure n'est migrable

Les migrations ont été fondues en une seule. Sur un serveur déjà installé, il faut remove --purge puis réinstaller, avec perte du catalogue — voir docs/installer.md.

Licence

AGPL v3 — voir LICENSE. L'AGPL attend que les utilisateurs d'un service en réseau puissent en obtenir la source : le lien vers le dépôt affiché dans la page « À propos » de l'application n'est pas un ornement.

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%