Katalog
Der Katalog enthält fertige Section-Templates, die direkt in eine Website übernommen werden können — ohne eigene Komponente zu schreiben. Jedes Template bringt Schema, Default-Content und eine Astro-Komponente mit.
Eingebaute Templates
Setzkasten liefert folgende Templates ab Werk mit. Alle können nach dem Hinzufügen frei angepasst werden.
| Template | Felder | Beschreibung |
|---|---|---|
| hero | heading, subtext, cta, image | Hero-Section mit Überschrift, Subtext, Call-to-Action und optionalem Bild |
| features | heading, items[] | Feature-Grid mit Überschrift und Array von Feature-Cards |
| cta | heading, text, buttonLabel, buttonHref | Call-to-Action-Section mit Button |
| testimonials | heading, items[] | Kundenstimmen als Karussell oder Grid |
| faq | heading, items[] | Fragen und Antworten als Akkordeon |
| footer | columns[], copyright, links[] | Footer mit Spalten, Copyright und Link-Listen |
Template-Format (.setzkasten-template)
Jedes Template ist eine JSON-Datei mit Name, Version, Schema-Definition und Default-Content. Das Schema beschreibt die verfügbaren Felder und deren Typen — identisch zum Format in setzkasten.config.ts.
{
"name": "hero",
"version": "1.0.0",
"label": "Hero",
"description": "Hero section mit Überschrift, Subtext und CTA",
"icon": "layout-grid",
"schema": {
"fields": {
"heading": { "type": "text", "label": "Überschrift", "defaultValue": "Willkommen" },
"subtext": { "type": "text", "label": "Subtext", "defaultValue": "..." }
}
},
"defaultContent": { "heading": "Willkommen", "subtext": "..." }
} Katalog im Admin verwenden
Der Katalog ist direkt im Admin-Dashboard erreichbar:
- 1 Im Dashboard auf Katalog & Templates klicken
- 2 Template aus der Liste auswählen
- 3 Zielseite auswählen, auf der das Template hinzugefügt werden soll
- 4 Hinzufügen — Template wird als neue Section eingefügt
CLI-Befehle
Der Katalog ist auch über die CLI verfügbar — zum Auflisten, Hinzufügen und Exportieren von Templates.
# Alle Templates anzeigen
setzkasten catalog list
# Template zur Seite hinzufügen
setzkasten catalog add hero
# Section als Template exportieren
setzkasten catalog export hero Import/Export programmatisch
Für automatisierte Workflows steht das @setzkasten-cms/catalog-Paket zur Verfügung. Es bietet eine Registry aller eingebauten Templates sowie Funktionen zum Im- und Export.
import { importTemplate, exportTemplate, registry } from '@setzkasten-cms/catalog'
// Alle eingebauten Templates
const templates = registry.list()
const hero = registry.get('hero')
// Exportieren
const json = exportTemplate('hero', sectionDef, contentData)
// Importieren
const template = importTemplate(jsonString)