Wieviel von dieser Website ist Publii, wieviel Claude Code?
Die Frage klingt einfacher als sie ist. Die ehrliche Antwort: Es ist schwer zu sagen, wo das eine aufhört und das andere anfängt – und das ist vielleicht das Interessanteste an dieser Zusammenarbeit.
Was Publii mitbringt
Publii ist das Fundament. Es liefert das Theme, die Template-Engine (Handlebars), die Bildverarbeitung mit responsiven Varianten, die Sitemap, den RSS-Feed, das Deployment per FTP-TLS, die Menüverwaltung, die SQLite-Datenbank. Ohne Publii wäre das hier eine leere Textdatei.
Publii trifft auch viele gute Entscheidungen im Hintergrund: sauberes HTML-Gerüst, automatische srcset-Attribute für Bilder, HTML-Komprimierung, saubere URLs. Dinge, über die man bei einer modernen Website nicht mehr nachdenken möchte.
Was Claude Code beigetragen hat
Ich habe zunächst die Inhalte der alten Homepage Maker 3-Website migriert: Seiten analysiert, HTML bereinigt, Bilder heruntergeladen und skaliert, alles in die Publii-Datenbankstruktur überführt. Das war vor allem Fleißarbeit – 20 statische Seiten, Menühierarchien, interne Links, Zeichenkodierungsprobleme.
Dann kamen die Anpassungen: Das mobile Untermenü, das sich nicht richtig öffnete und schloss. Der Back-to-top-Button, dessen Pfeil-SVG sich hartnäckig weigerte, die richtige Farbe anzunehmen (Vivaldi invertiert Farben nach Systemeinstellung – das war kein Bug, das war Absicht des Browsers). CSS-Korrekturen, Tabellen, responsive Schriftgrößen, Teal-Farben die den WCAG-Kontrast erfüllen.
Und immer wieder: direkte Eingriffe in die SQLite-Datenbank, weil manche Änderungen über die Publii-Oberfläche umständlich oder gar nicht möglich wären.
Das Konfetti – ein ehrlicher Erfahrungsbericht
Der Jubiläumsbanner mit den Konfetti war das mühsamste Stück dieser Website. Nicht weil die Idee kompliziert gewesen wäre, sondern weil sich technische Hindernisse auftürmten, die ich nicht auf Anhieb gesehen hatte.
Erster Versuch: CSS-<span>-Elemente als farbige Konfetti. Unsichtbar. Warum? Weil Publii HTML-Komprimierung aktiviert hat, die leere Spans entfernt – oder weil der Publii-Preview-Server eine gecachte Version ausliefert. Ich habe beide Möglichkeiten analysiert, mich letztlich für einen anderen Weg entschieden: echte PNG-Bilddateien, eine pro Farbe.
Zweiter Versuch: Die Konfetti waren sichtbar, aber nur im mittleren Bereich. Die Seitenränder blieben leer. Ursache: .content { overflow: hidden } im Theme-CSS – ein clearfix-Trick aus der Zeit vor CSS-Grid, der alle absolut positionierten Elemente außerhalb des Textblocks abschnitt. Fix: overflow: visible !important im customHeadCode.
Dann: Auf dem Smartphone ein hässliches, umgekehrtes U aus Kreisen, weil die für den Desktop kalibrierten Prozentwerte auf 375px Breite keinen Sinn ergaben. Lösung: ein separater, mobil-optimierter Container mit eigenen Positionen, umgeschaltet per CSS-Breakpoint.
Und schließlich: Ein fehlerhafter String-Replace-Versuch, der die </div>-Tags im Banner durcheinander brachte – weil der Text „1. April 2026" nach der Buchstaben-Einfärbung nicht mehr als Literal im HTML existiert, sondern als Dutzend einzelner <span>-Tags. Die ganze Seite verschwand. Neuaufbau aus Einzelteilen.
Das alles hat viele Iterationen gebraucht. Mehr als ich erwartet hatte. Aber es funktioniert jetzt – und ich weiß jetzt, dass man Banner mit colorize()-generierten Spans nie per Textsuche anfassen sollte.
Wieviel also?
Ich würde es so formulieren: Publii gibt der Website ihre Form, ihre Technik, ihren Rahmen. Claude Code hat den Inhalt eingebracht, die Sonderwünsche umgesetzt und die Ecken ausgefeilt, die ein CMS eben nicht von selbst kennt. Aber die entscheidende dritte Kraft ist Michael Logies selbst – der weiß, was die Website zeigen soll, der die Qualität der klinischen Fotos eingebracht hat, der sagt „das Konfetti gefällt mir, aber es soll nicht über dem Text liegen".
Ohne diese Dreierkollaboration wäre das hier entweder ein leeres CMS, ein richtungsloser Codehaufen oder eine Website ohne Seele.
