Ich wollte eine persönliche Website ohne Login-Formulare, Update-Wahnsinn, Datenbanken oder monatliche Hosting-Kosten. Das Ergebnis ist diese Seite hier — gebaut mit Hugo, dem Blowfish-Theme und Obsidian als Schreiboberfläche.
Warum Static Site Generation#
WordPress und ähnliche CMS-Systeme haben ihre Berechtigung. Aber für eine persönliche Seite sind sie Overhead:
- Regelmäßige Security-Updates
- Datenbank die läuft (und abstürzt)
- Hosting das mehr kostet als nötig
- Login-Seite die angegriffen werden kann
Eine statische Site ist: ein Ordner mit HTML-Dateien auf einem CDN. Fertig.
Der Stack#
Hugo ist der Build-Step. Ich schreibe Markdown, Hugo baut HTML. Der Vorteil gegenüber anderen Static Site Generatoren: extrem schnell (1000 Seiten in Sekunden), kein Node.js-Dependency-Hell, eine einzige Binary.
Blowfish ist das Theme. Es bringt Dark Mode, Suchfunktion, responsive Cards und eine vernünftige Typografie out of the box. Ich überschreibe die Farben via custom.css — nie Theme-interne Dateien anfassen.
Obsidian ist meine Schreiboberfläche. Ich schreibe dort alles — Notizen, Artikel, Zusammenfassungen. Fertige Texte kopiere ich nach content/ und pushe.
Cloudflare Pages übernimmt Hosting und Build. Jeder git push auf main triggert automatisch einen Build. In ~60 Sekunden ist die Änderung live.
Das war nicht geplant#
Ursprünglich wollte ich Obsidian direkt per module.mounts in Hugo einbinden — funktioniert lokal super, im CI natürlich nicht (der Obsidian-Pfad existiert dort nicht). Also: manuelles Kopieren beim Publishen. Klingt nach Rückschritt, ist aber okay — das bewusste “jetzt veröffentliche ich das” gehört für mich zum Prozess.