Separation as Tool

This commit is contained in:
2026-07-11 13:43:52 +02:00
commit f542382e58
80 changed files with 5863 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
# SKILLS — GCBoK.WebStaticBuilder
Fähigkeiten und wiederkehrende Arbeitsmuster für dieses Tool.
## Build & Test
- Immer `dotnet build -c Release` vor Verifikation.
- Smoke-Test: `webstatic build --env work` in `webstatic.example/`, dann `serve` prüfen.
- Pagefind-Index erwartet in `dist/pagefind/`; bei fehlendem Node nur Warnung.
## Häufige Fehler
- **NU1015** (keine Package-Version): CPM aktiv → Versionen in csproj pinnen + `<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>`.
- **CS0103** in `Program.cs`: Typen aus `GCBoK.WebStaticBuilder` nicht sichtbar → `using GCBoK.WebStaticBuilder;` oben in `Program.cs`.
- **CS8361** (Ternär in String-Interpolation): Tertiär-Ausdruck in `(...)` setzen oder vorab in Variable auslagern.
- **StringBuilder statt string** bei `Replace(...)`: Rückgabe von `BuildSectionsHtml` ist `string`.
## Dateien
- `src/BuildConfig.cs` — Config-Modell + Defaults + Merge + Load.
- `src/Directories.cs` — generische Pfade aus Config (Init vor Build).
- `src/Builder.cs` — Orchestrierung (Render, SEO, Sitemap, Pagefind).
- `src/I18n.cs``{{ i18n.* }}`-Substitution.
- `src/Translation/TranslationService.cs` — MT-Helfer (Azure/DeepL).