# Getting Started (KMU) Diese Anleitung beschreibt, wie Sie mit **GCBoK.WebStaticBuilder** eine eigene, mehrsprachige, statische Website erstellen — ohne Server, Datenbank oder JavaScript-Framework. ## 1. Voraussetzungen - **.NET 10 SDK** (`dotnet`) — https://dotnet.microsoft.com/download - Optional: **Node.js** (für die Suchfunktion Pagefind). Ohne Node wird die Seite gebaut, die Suche entfällt (nicht fatal). ## 2. Installation ```bash git clone build_webstatic cd build_webstatic ./install.sh # installiert nach /opt/GitCover/webstatic ``` Nach der Installation ist `webstatic` im PATH verfügbar. ## 3. Neue Website anlegen ```bash webstatic init mysite cd mysite ``` Das erzeugt eine Vorlage (`webstatic.example/`) mit: - `webstatic.json` — Konfiguration (Sprachen, Umgebungen, Pfade) - `i18n.json` — UI-Übersetzungen - `content/` — Markdown-Inhalte - `templates/layout.html` — HTML-Grundgerüst - `assets/` — CSS, JS, Favicon ## 4. Inhalte pflegen Jede Seite ist eine Markdown-Datei mit YAML-Frontmatter am Anfang: ```markdown --- section: start order: 1 eyebrow: "Startseite" title: "Startseite" description: "Die Landing-Page" href: / render: true navbar: true --- ## Einführung Ihr Inhalt … ``` - `order` steuert die Reihenfolge in Navigation und Sidebar. - `order: 0` = Banner, der auf der Startseite (order 1) eingebettet wird. - Sprachvarianten: `02-start.en.md`, `02-start.vi.md` (Fallback auf Basisdatei). ## 5. Bauen & Vorschau ```bash webstatic build --env work # localhost:8000 webstatic serve --port 8000 # lokaler Server (Strg+C beendet) ``` ## 6. Veröffentlichen | Ziel | Befehl | |------|--------| | Review | `webstatic build --env review` | | Staging | `webstatic build --env staging` | | Production | `webstatic build --env deploy` | Die erzeugte `dist/`-Aufgabe wird auf den jeweiligen Webspace kopiert. ## 7. UI übersetzen Texte im Layout (`templates/layout.html`) nutzen Platzhalter `{{ i18n.. }}`. Die Werte stehen in `i18n.json` (pro Sprache). Fehlende Schlüssel bleiben als Platzhalter sichtbar — so erkennen Sie Lücken sofort. ## 8. Machine Translation (optional) ```bash webstatic translate --check # welche Sprachen fehlen? export WEBSTATIC_TRANSLATOR_KEY= # Azure oder DeepL webstatic translate --draft # Entwürfe in .translation-drafts/ ``` Entwürfe überschreiben niemals Ihre Quelldateien — sie sind zum Nacharbeiten gedacht.