Was ist DESIGN.md und woher kommt es?
DESIGN.md begann bei Google Labs als Format hinter Stitch, dessen Tool zur UI-Generierung. Google hat die Spezifikation als Open Source veröffentlicht, und die Spec liegt nun auf GitHub. Sie verbreitete sich schnell über Google hinaus: Atlassian veröffentlichte einen Bericht über Tests zu portablem Design-Kontext in der Praxis, und es entstand ein entsprechendes Katalog-Ökosystem.
Das .md steht schlicht für Markdown. Die Datei hat keine spezielle Syntax, kein Schema zur Validierung und keinen Build-Schritt. Das ist beabsichtigt: Ein Agent liest sie genau so, wie er jede andere Datei in Ihrem Repository liest.
Warum eine Datei statt eines Prompts
Ein Coding-Agent, der eine UI erstellen soll, muss die visuellen Werte irgendwoher beziehen. Fehlt eine Quelle, nutzt er die Standardwerte der Library – weshalb KI-generierte Produkte oft gleich aussehen. Man kann Werte in einem Prompt angeben, aber Prompts existieren innerhalb einer Konversation, und Konversationen verlieren an Präzision, je länger sie werden.
Eine Datei verliert nicht an Präzision. Das ist der Kern des Mechanismus, und alle anderen Aspekte des Formats leiten sich daraus ab.
Das Format ist nicht komplex. Es liegt einfach an einem Ort, der immer wieder neu gelesen wird – und genau darin liegt die Lösung des Problems.
Was enthalten echte DESIGN.md-Dateien tatsächlich?
Statt zu mutmaßen, haben wir Stichproben gezogen. Wir haben 299 DESIGN.md-Dateien aus dem Root-Verzeichnis via GitHub Code Search extrahiert und analysiert. Das erste Ergebnis war überraschend und rückt alles andere in ein neues Licht.
Nur 24 % der öffentlichen DESIGN.md-Dateien behandeln Design
Von 299 Dateien enthielten nur 72 einen Abschnitt zu Farben oder Typografie. Der Rest sind Dokumente zur Software-Architektur – also wie ein System aufgebaut ist, nicht wie ein Produkt aussieht. DESIGN.md ist eine Namenskollision, und die Bedeutung im Sinne des visuellen Designs ist derzeit in der Minderheit. Wenn Sie eine solche Datei zu einem Repository hinzufügen, sollten Sie damit rechnen, dass einige Leser ein Architektur-Dokument erwarten.
Innerhalb dieser 72 echten Visual-Design-Dateien ist das Bild konsistent. Die mittlere Dateilänge beträgt 1.337 Wörter auf 263 Zeilen – es handelt sich also nicht um bloße Entwürfe; hier steckt echte Arbeit drin. Diese Arbeit fließt jedoch in dieselben drei Abschnitte, während dieselben vier konsequent ausgelassen werden.
| Dateien, die dies abdecken | |
|---|---|
| Typografie | 83% |
| Farbe | 67% |
| Komponenten | 67% |
| Spacing | 57% |
| Motive oder Prinzipien | 43% |
| Elevation | 26% |
| Motion | 25% |
| Do's and don'ts | 24% |
| Barrierefreiheit | 22% |
| Radius | 21% |
| Ikonografie | 10% |
Farben und Typografie sind nahezu universell. Radius, Elevation, Ikonografie und Barrierefreiheit sind selten. Und ein Versäumnis wiegt schwerer als all diese, da es unsichtbar bleibt, bis jemand einen Schalter umlegt.
Das Dark-Mode-Problem: 69% der Dateien lassen ihn aus
Von den 72 analysierten Visual-Design-Dateien enthalten 50 keinerlei Dark Mode – keinen .dark-Block, kein prefers-color-scheme, keinen zweiten Satz an Werten. Das sind 69%.
Dies ist die folgenschwerste Lücke in der gängigen Praxis, und sie führt zu stillen Fehlern. Im Light Mode sieht alles korrekt aus. Sobald ein Nutzer jedoch das Theme umschaltet, muss der Coding-Agent jeden Dark-Mode-Wert spontan erfinden: einen Hintergrund, der nie ausgewählt wurde, einen Vordergrund, dessen Kontrast nie geprüft wurde, und einen Akzent, der verblasst, weil niemand die Chroma für einen dunklen Hintergrund erhöht hat.
Dark Mode ist keine Invertierung
Die Invertierung der Helligkeitsskala erzeugt ein dunkles Theme, bei dem der Akzent blass wirkt und die Elevation nicht mehr funktioniert, da Schatten auf dunklen Hintergründen kaum wahrnehmbar sind. Erhöhen Sie stattdessen die Oberflächen, anstatt die Schatten zu vertiefen; halten Sie den Hintergrund fern von reinem Schwarz, den Vordergrund fern von reinem Weiß und steigern Sie die Chroma der Akzentfarben, anstatt sie zu senken.
## Color
### Light
--background: oklch(0.98 0.006 85)
--foreground: oklch(0.22 0.014 85)
--card: oklch(1 0 0)
--muted-foreground: oklch(0.48 0.012 85)
--primary: oklch(0.52 0.13 152)
--border: oklch(0.90 0.008 85)
### Dark
--background: oklch(0.17 0.010 85) /* not pure black */
--foreground: oklch(0.95 0.006 85) /* not pure white */
--card: oklch(0.22 0.010 85) /* raised, not shadowed */
--muted-foreground: oklch(0.70 0.010 85)
--primary: oklch(0.68 0.16 152) /* higher chroma to survive the dark ground */
--border: oklch(0.30 0.010 85)Nur 6% der analysierten Dateien verwenden OKLCH. Der Wechsel lohnt sich hier insbesondere deshalb, weil der Helligkeitskanal wahrnehmungsuniform ist. So kann ein Farbton geändert werden, ohne jedes Kontrastpaar erneut prüfen zu müssen.
Was sollte in einer DESIGN.md stehen, Abschnitt für Abschnitt?
Farben — semantische Rollen, beide Modi
Die folgenschwerste Entscheidung in der Datei ist die Benennung nach *Rolle* statt nach Farbton. --primary sagt einem Agenten, wo der Wert hingehört; --blue-600 nicht. Rollen ermöglichen es ihm, Ihr System auch in Situationen korrekt anzuwenden, die Sie nie vorhergesehen haben, und sie überstehen ein Rebranding.
86% der analysierten Dateien verwenden keine semantischen Rollennamen. Sie listen Hex-Werte auf oder benennen Farben nach ihrem Farbton. Das ist der Unterschied zwischen einer Datei, die ein Agent auf eine nie beschriebene Komponente anwenden kann, und einer Datei, aus der er nur kopieren kann. Die semantische Token-Ebene leistet hier die eigentliche Arbeit.
Typografie — Schriftfamilien, Skalierung und deren Funktion
Benennen Sie die Schriftfamilien, die Schriftschnitte, das Tracking und die Skalierungsschritte. Ein häufiger Fehler ist die Formulierung *eine Serifenschrift für Überschriften, eine Sans-Serif für den Fließtext* – eine Anweisung, die der Agent selbst auflösen muss und dies jedes Mal anders tun wird.
## Typography
Heading: "Fraunces", serif — 600, tracking -0.02em
Body: "Inter", sans-serif — 400, line-height 1.6
Mono: "JetBrains Mono" — 400, tabular figures in tables
Scale: 0.8125 / 0.875 / 1 / 1.25 / 1.5 / 2 / 3rem
H1 uses 3rem at 1.05 line-height; body copy never exceeds 68ch.Spacing, Radius, Elevation
Eine Spacing-Skala, ein Radius, der mit der Elementgröße variiert, und zwei oder drei Elevationsstufen, die auf einer gemeinsamen Lichtquelle basieren. Der Radius wird nur in 21% der Dateien abgedeckt und die Elevation in 26%. Deshalb weisen so viele generierte UIs an jedem Element unabhängig von der Größe denselben 0.5rem Eckenradius auf.
## Spacing
Scale: 4 / 8 / 12 / 16 / 24 / 32 / 48 / 64 / 96px
Section rhythm: 96px desktop, 64px mobile.
## Radius
sm 0.25rem (inputs) · md 0.5rem (buttons) · lg 0.875rem (cards) · xl 1.25rem (modals)
## Elevation
0 flush — use a border, no shadow
1 cards — 0 1px 2px rgb(0 0 0 / 0.06)
2 dropdowns — 0 4px 12px rgb(0 0 0 / 0.08)
Dark mode: raise the surface, do not deepen the shadow.Motive und Don'ts — der Teil, den die meisten Dateien auslassen
Tokens sagen einem Agenten, welche Werte zu verwenden sind. Sie sagen jedoch nichts darüber aus, was zu tun ist, wenn er auf eine Komponente stößt, die in Ihrer Datei nie erwähnt wurde. Motive und Verbote schließen diese Lücke; sie sind der Unterschied zwischen einer Datei, die das Ergebnis einschränkt, und einer, die es lediglich einfärbt.
76% der Dateien enthalten keine Verbote und 57% keine Motive. Dies sind die zwei am einfachsten zu schreibenden Abschnitte und gleichzeitig die zwei am häufigsten fehlenden.
## Motifs
- Hairline rules separate sections; no boxed cards on marketing pages.
- Numerals are tabular everywhere they can be compared.
- One accent per screen. If two things compete, one becomes muted.
## Don't
- No gradient text, ever.
- No shadow on a flush surface — use --border.
- Never hardcode a hex. If a role is missing, add the role.Komponenten-Styling und Ikonografie
Definieren Sie die Primitiven, die am stärksten zur Identität beitragen: Buttons, Inputs und Cards inklusive ihrer Zustände. Sie benötigen nicht jede einzelne Komponente. Die Ikonografie ist der kürzeste Abschnitt der Datei und in der Praxis mit 10% am seltensten vertreten – benennen Sie die Icon-Library, die Strichstärke, die Größenschritte und geben Sie eine Zeile zur Bildbehandlung an.
Was sind die häufigsten Fehler?
Neben den fehlenden Abschnitten zeigt sich in über der Hälfte des Korpus ein wiederkehrendes Problem: die Verwendung von Adjektiven an Stellen, an denen ein Wert stehen müsste.
54 % der untersuchten Dateien enthalten mindestens ein vages Adjektiv anstelle einer konkreten Entscheidung. Am häufigsten waren *clean* (39 % der Dateien), *modern* (36 %) und *professional* (22 %), gefolgt von *generous whitespace*, *elegant* und *beautiful*. Zudem enthalten 44 % der Dateien an keiner Stelle einen konkreten Wert für Abstände oder Größen.
Der Test für jede Zeile
Lesen Sie eine Zeile und fragen Sie sich, ob zwei kompetente Personen daraus dieselben Pixel erzeugen würden. „Clean and modern“ scheitert. „96px zwischen den Sektionen auf dem Desktop“ besteht. Alles, was scheitert, ist eine Entscheidung, die noch nicht getroffen wurde – und der Coding-Agent wird sie für Sie treffen, jedes Mal anders.
- Adjektive statt Werte. Der häufigste Fehler, in über der Hälfte der Dateien.
- Dark Mode fehlt. In 69 % der Fälle, was zu stillschweigenden Fehlern führt.
- Farben nach Farbton statt nach Rolle benannt. In 86 % der Fälle; dies führt zu Problemen, sobald der Agent auf eine Komponente stößt, die nicht beschrieben wurde.
- Keine Verbote. In 76 % der Fälle. Verbote werden zuverlässiger befolgt als Präferenzen.
- Ein Abschnitt mit der Anweisung „nutzen Sie Ihr Urteilsvermögen“. Schlimmer als ein fehlender Abschnitt, da er genau den Ermessensspielraum zurückgibt, den der Rest der Datei eigentlich einschränken sollte.
Wo wird die Datei abgelegt und wie finden Coding-Agents sie?
Legen Sie sie im Root-Verzeichnis des Repositories neben der AGENTS.md ab. Der Speicherort ist entscheidend: Eine DESIGN.md, die in docs/ verschachtelt ist, ist ein Dokument für Menschen; Agents, die nach dieser Konvention suchen, schauen im Root-Verzeichnis nach.
Referenzieren Sie die Datei anschließend in einer Zeile in Ihren Agent-Instruktionen, damit sie gezielt gefunden und nicht nur zufällig entdeckt wird. Sie ist eine Ergänzung zu diesen Dateien, kein Ersatz – die vier Dateien erfüllen unterschiedliche Aufgaben.
# AGENTS.md
## Design
Never hardcode theme colors, spacing or radii. Use the tokens in DESIGN.md.AGENTS.md ist die allgemeinere Konvention für Agent-Instruktionen und wird von einer wachsenden Anzahl an Tools gelesen. Die DESIGN.md enthält den visuellen Vertrag; die AGENTS.md verweist darauf.
Wie sieht eine vollständige Datei im gerenderten Zustand aus?
Dies ist der Teil, den fast jede andere Anleitung auslässt. Eine DESIGN.md ist nur so gut wie das Interface, das sie hervorbringt. Die oben genannten Abschnitte sind keine bloße Illustration – sie sind die serialisierte Form des unten stehenden Kits.
Terrain Vivant
Live renderRendered from the kit's actual tokens, fonts, and treatments
Dashboard
Welcome back — here's how Terrain Vivant is performing today.
Active users
12.6k
+4%Trending up this month
vs. previous 30 days
MRR
$64.6k
+12%Strong recurring growth
Net of churn
Retention
94%
+1%Engagement above target
Rolling 28-day window
NPS
54
+6Meets growth projections
Survey · n=1,204
Total revenue
Last 12 months
$64.6k+18.2%
Recent sales
You closed 265 deals this month.
Alex Rivera
alex@terrainvivant.com
Mira Okonkwo
mira@terrainvivant.com
Jonas Feld
jonas@terrainvivant.com
Sana Qureshi
sana@terrainvivant.com
Theo Lindgren
theo@terrainvivant.com
Recent transactions
View all| Customer | Status | Date | Amount |
|---|---|---|---|
AR Alex Rivera Founder & CEO | Paid | 2m ago | $1,999.00 |
MO Mira Okonkwo Head of Product | Pending | 1h ago | $39.00 |
JF Jonas Feld Design Lead | Processing | 3h ago | $299.00 |
SQ Sana Qureshi Engineering Lead | Paid | Yesterday | $99.00 |
TL Theo Lindgren Brand Director | Refunded | 2d ago | $2,400.00 |
Typography
Space Mono
Color system
28 semantic roles, light + dark
Agent outputs
DESIGN.md, CSS, Tailwind, shadcn
Kit showcase · live surfaces
Terrain Vivant
Live renderTerrain Vivant rendered from its real tokens across 3 surfaces.
Sample headline
Supporting copy goes here.
Active users
12.6k
+4%
MRR
$64.6k
+12%
Retention
94%
+1%
Why Terrain Vivant
Everything you need to ship
Brochure websites
Clear defaults keep every screen consistent from first draft to launch.
Annual reports
Accessible components and visible states are built into the system.
Event microsites
Reusable patterns give product, marketing, and content one visual language.
By the numbers
Growth you can measure
Monthly recurring revenue
$64.6k+12%
Targets
Activity
Last 12 months of usage
Start building with Terrain Vivant today
A bold two-color institutional editorial system built on vivid green and cobalt blue full-screen surfaces, with monospace type throughout and zero-radius geometry.
Dashboard
Welcome back — here's how Terrain Vivant is performing today.
Active users
12.6k
+4%Trending up this month
vs. previous 30 days
MRR
$64.6k
+12%Strong recurring growth
Net of churn
Retention
94%
+1%Engagement above target
Rolling 28-day window
NPS
54
+6Meets growth projections
Survey · n=1,204
Total revenue
Last 12 months
$64.6k+18.2%
Recent sales
You closed 265 deals this month.
Alex Rivera
alex@terrainvivant.com
Mira Okonkwo
mira@terrainvivant.com
Jonas Feld
jonas@terrainvivant.com
Sana Qureshi
sana@terrainvivant.com
Theo Lindgren
theo@terrainvivant.com
Recent transactions
View all| Customer | Status | Date | Amount |
|---|---|---|---|
AR Alex Rivera Founder & CEO | Paid | 2m ago | $1,999.00 |
MO Mira Okonkwo Head of Product | Pending | 1h ago | $39.00 |
JF Jonas Feld Design Lead | Processing | 3h ago | $299.00 |
SQ Sana Qureshi Engineering Lead | Paid | Yesterday | $99.00 |
TL Theo Lindgren Brand Director | Refunded | 2d ago | $2,400.00 |
Terrain Vivant UI
Every shadcn component, themed by this kit.
Buttons
Badges
Avatar / chips
Form
Controls
Feedback
Sample headline
A bold two-color institutional editorial system built on vivid green and cobalt blue full-screen surfaces, with monospace type throughout and zero-radius geometry.
Tabs
Manage your account settings and preferences.
Alert
Heads up
Your trial ends in 7 days. Upgrade to keep access.
Tooltip
Sollte man sie manuell schreiben oder generieren lassen?
| Manuell geschrieben | Aus einem Kit generiert | |
|---|---|---|
| Ideal, wenn | Bereits eine Marke existiert, die transkribiert werden kann | Man bei Null anfängt |
| Typischer Fehler | Adjektive statt Werte; Dark Mode fehlt | Akzeptieren des ersten Ergebnisses ohne Überarbeitung |
| Dark Mode | In 69 % der realen Dateien fehlend | Zusammen mit dem Light Mode abgeleitet |
| Motive und Verbote | In 57 % bzw. 76 % der Fälle ausgelassen | Enthalten, Überprüfung empfohlen |
Wenn Sie die Datei manuell schreiben, sind der Dark Mode und die Verbote die zwei Abschnitte, die Sie sich unbedingt durcharbeiten sollten. Der Korpus zeigt eindeutig, dass dies die Bereiche sind, die am häufigsten übersprungen werden – und genau sie entscheiden darüber, ob die Datei tatsächlich eine verbindliche Vorgabe darstellt.
Eine vollständige DESIGN.md mit einem einzigen Befehl erstellen
Jedes Identity Forge Kit lässt sich in eine vollständige DESIGN.md serialisieren – inklusive Light- und Dark-Tokens, einer echten Font-Pairing, Motiven und Don'ts – und installiert die Token-Dateien direkt daneben. Kostenlose Kits erfordern kein Konto.
Wer hat DESIGN.md erstellt?
Google Labs, als Format für das UI-Generierungstool Stitch. Google hat die Spezifikation als Open Source veröffentlicht; sie ist nun unter github.com/google-labs-code/design.md zu finden. Die Adaption hat sich weit über Google hinaus verbreitet – Atlassian hat beispielsweise einen eigenen Bericht über die Nutzung veröffentlicht.
Was bedeutet das .md in DESIGN.md?
Einfach Markdown. Es gibt keine spezielle Syntax, kein Schema und keinen Build-Schritt. Die Datei ist reines Markdown, sodass ein Agent sie genau so liest wie alles andere im Repository.
Ist DESIGN.md ein offizieller Standard?
Es handelt sich um eine veröffentlichte Open-Source-Spezifikation mit einem klaren Ursprung und nicht um einen ratifizierten Standard. In der Praxis einigen sich Tools auf die Struktur – eine Markdown-Datei mit visuellen Werten im Root-Verzeichnis des Repositories – wobei sie variieren, welche Abschnitte sie auslesen.
Wo sollte die Datei liegen?
Das Repository-Root, neben AGENTS.md. Eine DESIGN.md, die in docs/ verschachtelt ist, wird als Dokumentation für Menschen gelesen; Agents, die nach dieser Konvention suchen, prüfen das Root-Verzeichnis.
Wie lang sollte sie sein?
Die mediane Länge öffentlicher Dateien beträgt 1.337 Wörter. Die Länge ist nicht entscheidend, sondern die Vollständigkeit. Eine 400-Wörter-Datei mit beiden Farbmodi, einer Typografie-Skala und fünf Verboten ist wertvoller als eine 2.000-Wörter-Datei voller Adjektive.
Kann ich die DESIGN.md von jemand anderem kopieren?
Das ist möglich, dann übernehmen Sie jedoch deren Brand. Dies ist ein guter Weg, um das Format zu studieren, aber ein schlechter Weg, um eine eigene Identität zu entwickeln. Kopieren Sie die Struktur, aber generieren Sie die Werte basierend auf Ihrer eigenen Brand.
Ersetzt sie ein Designsystem?
Sie ist die für Agents lesbare Projektion eines Designsystems. Wenn Figma-Libraries und eine Komponenten-Library vorhanden sind, ist die DESIGN.md das Medium, über das deren Entscheidungen einen Coding-Agent erreichen – sie ist kein Ersatz für diese.
Was passiert, wenn mein Agent sie ignoriert?
Prüfen Sie nacheinander drei Dinge: ob sie in der AGENTS.md referenziert wird, ob Anweisungen als Verbote statt als Präferenzen formuliert sind und ob die Werte tatsächlich konkrete Werte sind. Die meisten Berichte über „ignorierte Dateien“ entpuppen sich als Dateien, die nur aus Adjektiven bestehen.