IllusionCMS
Schlank, aber ein echtes Powerpaket: ein CMS für Leute, die HTML, CSS und JavaScript selbst schreiben – mit Collections, Workflows, Statistik und Brücke zu IllusionDB. Ein Programm, ein Datenordner, und die Website ist online.

IllusionCMS ist das Gegenteil eines Baukastens: Jede Seite ist HTML in einem richtigen Code-Editor, dazu geteilte CSS- und JavaScript-Dateien, Snippets, Komponenten und Templates in Django-Syntax. Für Entwicklerinnen und Entwickler, die wissen, was sie schreiben – und keine Lust auf Konfiguration haben. Trotzdem steckt viel drin: Collections, Workflows, Statistik, Import und Export, mehrere Websites in einer Instanz, eine vollständige REST-API und eine Brücke zu IllusionDB.
Was es kann
Seiten und Templates
- Seitenbaum mit Code-Editor (CodeMirror mit Emmet und Formatierung) und Live-Vorschau für Desktop, Tablet und Mobil. Das Panel Template-Daten zeigt, was ein Template sieht, und fügt Ausdrücke per Klick ein.
- Templates in Django-Syntax: Schleifen, Bedingungen und Filter, dazu Snippets, Komponenten mit Slots, Layouts mit Blöcken und Makros.
- CSS und JavaScript als geteilte Dateien, je Seite oder für ganze Bereiche zugeordnet, automatisch minifiziert und komprimiert. Snippets bringen ihre eigenen Dateien mit; fertige Vite-Builds laden als ES-Module.
- Mehrere Websites in einer Instanz, jede mit eigenen Domains, eigener 404-Seite, eigenem Icon und eigener robots.txt.
- Versionshistorie für Seiten, Snippets, CSS/JS und Workflows, Vorschau-Links für Entwürfe und Pens – Spielwiesen wie bei CodePen, auf Wunsch unter einer anonymen Adresse öffentlich.
Inhalte und Daten
- Collections für Blog, Projekte oder Produkte: Text, Markdown, HTML, Zahl, Datum, Bild, Datei, Auswahl, URL und Verknüpfungen zwischen Collections. Im Template genügt eine Zeile wie
data("blog", "sort", "-datum"). - Detailseiten über Catch-All-Seiten – mit Live-Vorschau beim Bearbeiten eines Eintrags, noch bevor er gespeichert ist.
- Singletons für Website-Einstellungen, Farbcodes und Kontaktdaten: genau ein Eintrag, im Template direkt als Objekt.
- CSV-Import und -Export mit Abgleich bestehender Einträge, Ordner zur Übersicht, auf Wunsch eine öffentliche, CORS-fähige API je Collection.
- REST-Quellen: externe APIs anschließen und ihre Antworten direkt im Template nutzen, mit Zwischenspeicher.
- Brücke zu IllusionDB: Daten aus PostgreSQL, MySQL, MariaDB oder SQLite filtern, sortieren, gruppieren und blättern – bis hin zu Tausenden Landingpages aus einer einzigen Tabelle, ungecacht und samt Sitemap.
- Dateiverwaltung mit automatischen Bildgrößen für
srcset, WebP-Fassungen und einer Aufräumfunktion für ungenutzte Dateien. Dateien lassen sich verschieben, an Ort und Stelle ersetzen (ID, Pfad und alle Verwendungen bleiben) und zeigen, wo sie verwendet werden; auf Wunsch liegen sie in S3-kompatiblem Speicher (Garage, AWS, Hetzner, R2 …), und private Dateien werden nur signiert ausgeliefert.
Seitenbaukasten
- Bausteine statt Copy-and-paste: Aus einem Snippet wird ein Baustein mit Parametern (Text, Markdown, Bild, Auswahl, Verknüpfung …) und Slots für verschachtelte Blöcke. Seiten und Collection-Felder bekommen einen Block-Editor mit Drag & Drop, Duplizieren und Live-Vorschau – ohne dass HTML im Inhalt landet.
- Globale Blöcke (Newsletter-Kasten, Kontakt-Teaser) werden einmal gepflegt und wirken überall; wer will, passt Parameter je Verwendung an – etwa die Überschrift nur auf einer Seite – oder bettet den Block als Kopie ein.
- Seitenlayouts als Vorlage für neue Seiten, Sprachfassungen mit Sprachumschalter und
hreflang, und eine Demo-Website, die bei der Einrichtung auf Wunsch angelegt wird.
Workflows
- Node-Editor im Stil von Node-RED: HTTP-Endpunkte, Zeitpläne und Collection-Ereignisse als Start; JavaScript-Funktionen, Weichen, HTTP-Anfragen, Verzögern und Zusammenführen; E-Mail-Versand über den eigenen SMTP-Zugang und ein Speicher je Workflow.
- Eigene Nodes: häufig benötigte Skripte als wiederverwendbare Bausteine mit Parametern und benannten Ausgängen – einmal geschrieben, in jedem Workflow per Drag & Drop nutzbar.
- Im Template aufrufbar:
workflow("pfad")holt Daten aus einem Workflow direkt in die Seite. Kontaktformulare, Benachrichtigungen oder ein nächtlicher Abgleich mit anderen Systemen brauchen keinen zusätzlichen Dienst.
Sichtbarkeit und Statistik
- SEO automatisch: Sitemap samt Detailseiten (ab 50 000 Adressen als Index), Open-Graph-Tags für Link-Vorschauen,
noindex/nofollowje Seite. - Weiterleitungen, beim Umbenennen und Verschieben von Seiten automatisch angelegt, mit Protokoll der 404-Aufrufe und CSV-Import.
- Besucherstatistik ohne Cookies und ohne gespeicherte IP-Adressen: Seiten, Herkunft, Browser, Geräte, Downloads und eine Weltkarte der Länder – ermittelt auf dem eigenen Server, ohne Fremddienst. Gespeichert werden nur Tageswerte.
- Schnell und sicher ausgeliefert: Seiten-Cache, Komprimierung, einstellbare Sicherheits-Header und ein Limit für Anfragen und Anmeldeversuche.
Umziehen, abgleichen, betreiben
- Website-Import: übernimmt bestehende Websites, etwa von Webflow, samt CSS, Skripten und Bildern – auch erneut, ohne Duplikate.
- Statischer Export: die ganze Website als HTML-Dateien für einen einfachen Webspace, mit Weiterleitungen in der
.htaccess. - Synchronisieren statt deployen: Eine lokale Instanz holt den kompletten Stand des Live-Servers herunter, du arbeitest offline weiter und lädst ihn zurück hoch. Einträge, die live entstehen (etwa Formularanfragen), bleiben dabei erhalten.
- App- und Headless-Betrieb: Auf dem Live-Server lässt sich die Admin-Oberfläche abschalten; gepflegt wird dann aus der lokalen Instanz über eine Verbindung. Mehrere Server lassen sich so aus einer einzigen Oberfläche verwalten.
- Integrations-API: atomare Batches mit Wiederholungsschutz (Idempotenz-Schlüssel), ein Schema-Endpunkt mit ETag und Webhooks mit Signatur – die Grundlage für IllusionPublish, das Redaktionsabläufe mit Freigabe, Vorschau und Veröffentlichung auf genau eine CMS-Instanz aufsetzt.
- Nächtliche Backups, eine REST-API für alles mit API-Tokens und ein eingebautes Handbuch samt API-Dokumentation.
Unter der Haube
Ein einziges Go-Programm mit eingebetteter Admin-Oberfläche (Svelte) und SQLite – ohne CGO, ohne externe Dienste. Alle Daten liegen in einem Ordner: eine Datenbankdatei und die Medien. Läuft direkt auf Windows, Linux und macOS oder im Docker-Container, auch hinter Coolify oder Traefik.
Diese Website läuft übrigens selbst auf IllusionCMS.


