Zum Inhalt springen

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.

hero.setzkasten-template
{
  "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. 1 Im Dashboard auf Katalog & Templates klicken
  2. 2 Template aus der Liste auswählen
  3. 3 Zielseite auswählen, auf der das Template hinzugefügt werden soll
  4. 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.

Terminal
# 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.

scripts/manage-templates.ts
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)
Hinweis: Katalog-Templates sind ein Ausgangspunkt — nach dem Hinzufügen zur Website können die Komponenten und Schemas frei angepasst werden. Die Website bleibt vollständig autark.