SHA256
22 lines
1.2 KiB
Markdown
22 lines
1.2 KiB
Markdown
# 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).
|