nordwerk ui-catalog
92 sections in 26 categories. Filters use the facets fromcapabilities.json — the same facets that control component selection.
Saisonale Ansage (Ferien, Vertretung). Ersetzt Popups.
Referenzen als Kartenstapel — jede Karte bleibt kurz stehen, die naechste schiebt sich darueber. Ohne motion eine gewoehnliche Kartenliste.
Eine Werk- oder Projektseite: Bild in voller Breite (stacked) oder links neben den Angaben (split, fuer Hochformate), Angaben als Haarlinien-Zeilen, Text und Anfrage-Link, unten Vor und Zurueck. Seitenkopf einer Detailseite, kein Block innerhalb einer Seite. Optional Preis/Preis auf Anfrage und Kaufanfrage als aufklappbares Formular (Feld item) am Werk.
Esstisch-Planer für Tischlereien: Raum, Personen, Form, Holz und Gestell ergeben Draufsicht, Seitenansicht, Empfehlung und Richtpreis (Sätze der Werkstatt als Props: woods, frames, hourlyRate, finishPricePerM2; showPrice=false blendet den Preis für Besucher aus). Die Anfrage geht an das Formular-Modul des Betriebs (formAction wie Contact02, dasselbe Modul reicht): Planung, Zuschnitt und Link zur Planung stehen im Feld message, optional phone. Braucht JavaScript; ohne Skript Startzustand und Nachrichtenformular. Eingabe-Beschriftungen fest deutsch. Zeichnung aus Tokens, nur Holztöne als Materialfarbe. Ein Planer je Seite und nicht zusammen mit Contact02 (?table= in der Adresse, beide reagieren auf ?gesendet=1). Composer bietet sie noch nicht an (kein Slot configurator, kein Eintrag in rubrics.json), siehe ops/CONFIGURATORS.md.
Kontaktkarten ohne Formular. Als Wiederholblock Chrome, auf /kontakt Inhalt.
Einziges Modul mit echtem Formular (f.nordwerk.studio). Telefon, E-Mail, Adresse, Zeiten je optional (leer = ausgeblendet). Optional Telefonfeld (formPhoneLabel) und Betreff-Auswahl (subjects); das Modul braucht dann die Felder phone und subject. ?thema= fuellt die Nachricht vor. messageRequired folgt dem Modulfeld message (false = optional); privacyHref verlinkt die Datenschutzerklaerung hinter dem Einwilligungstext.
Anfahrt mit Bild, Wochentagen und Parkhinweis.
Ein Weg, mit Nebensatz.
Zwei gleichwertige Wege (Telefon und WhatsApp).
Zwei Wege nebeneinander, von denen einer angekuendigt statt geoeffnet sein darf (secondaryState=bald): Direktdownload jetzt, Store spaeter. Der angekuendigte Weg ist bewusst kein Link.
FAQ mit Kontakt-Ausweg daneben.
Leistungen als kuratierte Reihe. Ab etwa sechs gleichrangigen Leistungen ruhiger als ein Raster.
Genau drei, feste Icons (leaf/ruler/handshake).
Alternierend Bild/Text — braucht je Eintrag ein Bild.
Nummerierte Karten, optionaler Link je Karte.
Mit Preisangabe je Leistung.
Bild und Text laufen beim Scrollen unterschiedlich schnell (Parallaxe). Braucht ein Bild, das die Bewegung traegt. imageRatio=landscape fuer breites Material wie Anwendungsfenster oder Karten; Default bleibt hochkant. imageSide=right stellt das Bild ab Tablet rechts, damit mehrere Splits abwechseln.
Vierspaltiger Fuss mit Wortmarke, Leistungen, Kontakt und Rechtlichem. Spaltentitel und Ziel der Wortmarke sind Props (fuer weitere Sprachen), logoMark/logoSrc wie Navbar05. Spaltentitel folgen dem Profilschalter type.metaCase.
Footer mit eingebautem Abschluss-CTA.
Vorher/Nachher — braucht genau zwei passende Bilder.
Bildreihe mit echtem Wischen und Pfeilen. Fuer wachsende Referenzmengen; Grid nutzen, wenn alles auf einen Blick soll.
Werkverzeichnis: Raster ohne Rahmen, unter jedem Bild Titel links und Angabe rechts in der Meta-Schrift, Zaehler in der Kopfzeile. Optional ein Textlink zur Uebersicht (moreLabel) fuer eine Auswahl.
Zwei Wege im Hero. Karte im Bild nur über cardText (seit 02.09.2026; vorher hart kodierter Demo-Satz).
Zentrierter Auftakt mit Panorama-Bild; imageRatio wide (16:7), landscape (4:3) oder portrait (4:5) — Hochformat nicht mehr auf 16:7 beschneiden.
Fest dunkel — färbt die eigene Fläche, kein Ton wählbar.
Hero mit Zeiten-Karte. Der Standard für Praxis und Handwerk.
Textauftakt ohne Bild, auf der Displaygroesse aus den Typo-Tokens. Fuer Seiten, die mit einer Aussage statt mit einem Foto beginnen.
Zentrierte Aussage in Displaygröße, darunter eine Reihe kurzer Belege. Kein Bild, kein Knopf. Zentriert trägt eine Zeile etwa 15 bis 17 Zeichen.
Zentrierter Produktauftakt: Zeichen, Aussage, Vorspann, zwei Wege — darunter randabfallend das Bild. Braucht Signet und Bild.
Zentrierte Aussage mit Haarlinie darunter; Vorspann links und Handlung rechts stehen unter der Linie. Für Seiten, deren Kopf schon eine Navigation trägt.
Druckkopf: zentriert im groessten Grad des Profils, ohne Navigation und ohne Bild. Optionaler zweiter Weg, der mit secondaryState=bald angekuendigt statt geoeffnet wird. Traegt nur sehr kurze Saetze — in scale=gross bricht eine Zeile bei etwa 13 Zeichen.
Textkopf: ein Satz in Displaygroesse, Meta-Zeile darueber, hoechstens ein Textlink. Kein Bild, kein Knopf; die Bilder folgen im naechsten Abschnitt.
Mit Hinweisfeld für Abweichungen. Unter 640 px stehen Tag und Zeit untereinander.
Genau fünf Partner, nur Text.
Drei bis acht Partner als Bildmarke oder Wortmarke, optional verlinkt. Ersetzt die feste Fünferzahl von Logos01.
Laufendes Band statt fester Zeile. Lohnt ab acht Namen; darunter reicht Logos01. Haelt bei prefers-reduced-motion an.
Ein Bild ueber die volle Breite, das beim Scrollen aus einem schmalen Ausschnitt herauswaechst. Traegt keine Ueberschrift, nur eine Bildunterschrift. frame=inset endet eingerueckt und rund in der Inhaltsbreite, ohne Zoom und im Seitenverhaeltnis des Bildes (fuer Bilder mit wichtigen Raendern, z. B. mehrere Geraete).
App-Screenshots in Geraeterahmen (iphone, watch, mac) auf einer eingerueckten runden Flaeche; Rahmen und Flaeche aus CSS, Screenshot ungeschnitten, darkSrc als Dark-Mode-Paar per prefers-color-scheme. layout=stage zeigt 1-3 Geraete unter mittiger Ueberschrift (crop=bottom schneidet an der Unterkante), layout=split stellt ein Geraet neben den Text (imageSide wechselt ab). backdrop=tint leitet das Pastell aus brand ab. Braucht echte Screenshots ohne Rahmen.
Mit Kontakt-Topbar. Bildlogo möglich. scroll=fade: bleibt oben, blendet beim Scrollen nach unten aus und nach oben ein. Links brechen nicht um (whitespace-nowrap); höchstens fünf Links mit kurzen Labels, sonst wird die Zeile zu breit.
Nur Wortmarke und Menüzeichen, ohne Unterkante. Die Navigation klappt als Liste auf. Für Seiten, die mit einer Aussage beginnen statt mit einer Menüleiste. scroll=fade: bleibt oben, blendet beim Scrollen nach unten aus und nach oben ein.
Wortmarke, Sprungmarken und eine Handlung auf einer Zeile, ohne Unterkante. Für lange einseitige Auftritte.
Eine Zeile aus Wortmarke und Standortangabe (oder einem Link), darunter eine Haarlinie. Kein Menue — die Wegweisung uebernimmt der Fuss. logoMark=nordwerk setzt das Nordwerk-Zeichen mit Punktfarbe (logoMarkColor) vor die Wortmarke, logoSrc ein Bildlogo. Mehrsprachige Sites bekommen rechts automatisch einen Sprachumschalter.
Fest dunkel.
Speisekarte für Café, Restaurant, Imbiss, Bäckerei. items zählt Kategorien, je Kategorie etwa 2 bis 15 Einträge (Name, Beschreibung, Preis, optional vegetarisch/vegan). Ab zwei Kategorien Sprunglinks (nicht sticky), ab lg zwei Spalten. Ohne JavaScript. structuredData gibt schema.org/Menu aus, Offer nur bei einer einzelnen Zahl als Preis; menuName setzen („Speisekarte <Betrieb>“), sonst gilt title. Für eine kurze Preisliste ohne Kategorien Pricing02.
Langtext: Absätze, Zwischentitel, Zitate und Bilder, die aus der Textspalte ausbrechen (left/right/wide/full). Seitenteil Langtext auf der Seite über eine Person.
Absätze, Aufzählungen, Begriffspaare. Trägt auch Impressum.
Zwei grosse Zeilen als Zaesur zwischen zwei Kapiteln einer Seite. Kein Bild, kein Knopf.
Auftraggeber als Namensliste (Name, Ort, Art) ohne Logos, optional nach Art gruppiert. Für Betriebe, deren Beleg eine lange Kundenliste ist.
Genau vier Werte.
Nummeriert.
Eine Person: Meta-Zeile links, kleines quadratisches Portrait mit Satz und kurzem Text rechts, Textlink. Trägt ein kleines Profilbild; ohne Telefon.
Braucht je Person ein Bild. Vier Spalten, bis 16 Personen.
Eine Person mit Porträt und Unterschrift.
Team als dichte Liste mit Initialen-Kreis oder kleinem Porträt, optional gruppiert. Für viele Mitarbeitende ohne oder mit lückenhaften Fotos.
Kurze Zitate nebeneinander. Die Menge ist der Beleg; fuer ein einzelnes starkes Zitat ungeeignet.
Ein Zitat gleichzeitig, gross gesetzt. Fuer wenige, dafuer lange und tragende Stimmen; bei vielen kurzen die Reihe oder die Wand nehmen.
Viele kurze Stimmen als Wand: zusammengefaltet laufen zwei gegenlaeufige Reihen, ein Knopf oeffnet das Gitter. Die Menge ist die Aussage — unter sechs Stimmen faltet sie sich gar nicht erst zusammen.
Marke, keine Section: ab hier ist die Seite wieder hell. Ohne diese Marke laeuft die dunkle Zone bis zum Seitenende.
Marke, keine Section: ab hier kippt die ganze Seite ins Dunkle. Zeichnet nichts. Der Renderer wickelt alles bis zur Endmarke in .tone-takeover. Genau ein Paar pro Seite.