Commit Graph
3 Commits
Author SHA1 Message Date
mathieuandClaude Opus 5 edb8707c97 Reduit Bootstrap a son reboot : 1298 regles ramenees a 76
Aucune classe Bootstrap n'apparait dans le code Razor. Mais le retirer aurait
casse la mise en page : mesure a l'appui, 124 elements sur 124 changeaient —
box-sizing retombait a content-box, la police a Arial nu, les boutons a 13,3 px,
et la marge de main perdait 24 px. app.css ne pose aucune de ces bases.

Ce qui servait, c'etait donc le socle, pas les composants — et Bootstrap le
livre separement. Styles calcules compares sur 12 routes et 785 elements entre
le complet et le reboot : zero ecart. Verifie ensuite apres rechargement reel,
a 320, 375 et 1280 px, sans debordement horizontal.

228 Ko -> 10 Ko, soit 31 Ko -> 3,2 Ko une fois compresse. Le poids n'etait pas
l'enjeu : 31 Ko sur une archive de 65 Mo est negligeable, et c'est ce qui a
failli faire garder le fichier. Le gain est de ne plus embarquer 1222 regles
inutilisees.

628 tests au vert, publish verifie.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 12:25:47 +02:00
mathieuandClaude Opus 5 fa40539d26 Retire 43 fichiers Bootstrap que rien ne charge, et la config Rider
index.html ne reference qu'un seul fichier de lib/bootstrap : css/bootstrap.min.css.
Les 43 autres — versions RTL, grid, utilities, reboot, tous les JS, et surtout
6 Mo de source maps — n'etaient references nulle part mais partaient dans
chaque archive de release. 8,4 Mo sur disque ramenes a 236 Ko ; l'archive
publiee passe de 69 a 65 Mo (l'ecart est moindre que sur disque, les source
maps etant du texte qui se compresse tres bien).

⚠ bootstrap.min.css RESTE, et ce n'est pas un oubli : aucune classe Bootstrap
n'apparait dans le code Razor, mais son reboot habille les elements nus (a,
button, input, table). Le retirer changerait l'apparence de tout ce que app.css
ne stylise pas explicitement — CLAUDE.md note deja que les liens du menu
ressortaient « en bleu Bootstrap souligne » quand une regle manquait. Cela se
verifie a l'ecran, pas au clavier.

.idea/ etait suivi par git : configuration JetBrains Rider personnelle, dont le
chemin de la base SQLite locale. .gitignore ignorait .vs/ et .vscode/ mais
l'avait oublie ; il ignore desormais aussi *.user et *.DotSettings.user.

628 tests au vert, publish verifie (binaire, wwwroot et ressources d'index.html).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 12:18:38 +02:00
mathieuandClaude Opus 5 4990e41f3e Phase 1 : squelette de la solution (3 projets .NET 10)
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>
2026-08-17 21:52:37 +02:00