- A1 : forcer la revalidation HTTP (Cache-Control: no-cache) sur les fichiers statiques,
pour empêcher un navigateur de garder indéfiniment un CSS/JS périmé quand le service
worker ne s'active pas.
- A2 : le filtre du catalogue (statut, type de document) reprend les mêmes pastilles
colorées que les cartes (Libelles.ClasseStatut / nouvelle Libelles.ClasseTypeDocument).
- A3 : remplacement du logo par défaut de Blazor par un pictogramme de livre ouvert
(favicon, icônes PWA, logo du bandeau, logo mabibli_ynh).
- A4 : une couverture cassée désactive aussi son bouton d'agrandissement.
- A5 : cache IndexedDB des couvertures pour la consultation hors-ligne, sans ralentir
l'affichage en ligne (mise en cache en tâche de fond). L'allègement (redimensionnement,
WebP) reste hors scope, à mesurer avant de s'y engager.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Mise en place de la structure de base, sans aucune fonctionnalité métier :
- MaBibli.sln à la racine, avec trois projets ciblant net10.0
- MaBibli.Client : Blazor WebAssembly PWA (dotnet new blazorwasm --pwa),
pages d'exemple du modèle (Counter, Weather) retirées
- MaBibli.Api : ASP.NET Core, sert aussi les fichiers statiques du client
(UseBlazorFrameworkFiles + MapFallbackToFile), via le package
Microsoft.AspNetCore.Components.WebAssembly.Server
- MaBibli.Shared : entités et enums partagés (Livre, Pret, Format, Statut),
conformes au modèle de données de CLAUDE.md — AjoutePar est une simple
traçabilité, Pret est une table séparée pour garder l'historique complet
- EF Core + SQLite dans l'API : MaBibliDbContext, chaîne de connexion,
et migration initiale InitialCreate vérifiée par un database update
- dotnet-tools.json : dotnet-ef épinglé en outil local
Vérifié : dotnet build sans avertissement, et
dotnet publish MaBibli.Api -c Release -r linux-x64 --self-contained
produit un dossier unique dont le wwwroot contient bien _framework/.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>