<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Webdesign Blog – Agentur kulturbanause</title>
	<atom:link href="https://kulturbanause.de/blog/feed/" rel="self" type="application/rss+xml" />
	<link>https://kulturbanause.de/blog/</link>
	<description>Webdesign Agentur für WordPress, Responsive Design, Grafik, Webentwicklung, Seminare und Schulungen in Berlin</description>
	<lastBuildDate>Tue, 11 Aug 2026 07:55:24 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>

<image>
	<url>https://media.kulturbanause.de/2025/10/cropped-kulturbanause-logo-square-32x32.png</url>
	<title>Webdesign Blog – Agentur kulturbanause</title>
	<link>https://kulturbanause.de/blog/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Figma und KI-Agenten: Automatisierte Workflows von der Idee bis zum Code</title>
		<link>https://kulturbanause.de/blog/figma-und-ki-agenten-automatisierte-workflows-von-der-idee-bis-zum-code/</link>
					<comments>https://kulturbanause.de/blog/figma-und-ki-agenten-automatisierte-workflows-von-der-idee-bis-zum-code/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Tue, 11 Aug 2026 07:52:18 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[Figma]]></category>
		<category><![CDATA[Workflow]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=42094</guid>

					<description><![CDATA[<p>KI-Agenten in Kombination mit Figma werden entweder dafür eingesetzt, das Design-Team bei der Gestaltung von Layouts und Prototypen innerhalb von Figma zu unterstützen oder um fertige Design-Dateien und Flows in möglichst sauberen und konsistenten Code zu überführen. Grundlage für beides ist eine sauber aufgebaute und inhaltlich detailliert beschriebene Komponenten-Bibliothek.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-und-ki-agenten-automatisierte-workflows-von-der-idee-bis-zum-code/">Figma und KI-Agenten: Automatisierte Workflows von der Idee bis zum Code</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma und KI-Agenten: Automatisierte Workflows von der Idee bis zum Code					
            </span>
        </h1>
        
        

	</div>

</header>





<p class="wp-block-paragraph">KI verändert rasant, wie Design und Entwicklung zusammenarbeiten. Für viele Unternehmen und Team-Leads stellt sich daher die Frage, was mit einem Design-Tool wie Figma und einem KI-Agenten heute überhaupt möglich ist und welche Voraussetzungen dafür geschaffen werden müssen. Wir geben einen Überblick. </p>



<div class="cta-container"><aside class="cta"><div class="cta__banner"><img decoding="async" fetchpriority="low" src="https://kulturbanause.de/wp-content/themes/kulturbanause/assets/img/cover-figma-design-development-workflow-small.webp" alt="Cover des Video-Trainings mit Figma Logo und Dev Mode Icon" width="150" class="product-cover"><div><h2 class="cta__title" data-toc-heading-ignore>Video-Training: Figma – Design/Development-Workflow</h2><p>Von Design zu Dev und KI. Ein umfassender Einblick in Figmas Dev Mode und den Hand-Off-Prozess. Für alle Designer, Developer & Team-Leads, die ihre Zusammenarbeit verbessern möchten.</p><a href="https://shop.kulturbanause.de/produkt/video-training-figma-dev-mode-hand-off/" class="btn btn-primary" target="_blank" rel="noopener">Im Shop anzeigen&nbsp;&rarr;</a></div></div></aside></div>



<p class="wp-block-paragraph"><div class="toc is-sticky" data-toc-container></div></p>



<h2 id="h-das-design-nbsp-system-als-ausgangspunkt" class="wp-block-heading">Das Design&nbsp;System als Ausgangspunkt</h2>



<p class="wp-block-paragraph">Grob lassen sich verschiedene Anwendungsfälle unterscheiden. Im ersten sollen Design-Teams innerhalb von Figma durch KI unterstützt und beschleunigt werden. Im zweiten soll das, was in Figma entstanden ist, möglichst schnell und zuverlässig mittels KI in produktionsreifen Code überführt werden. </p>



<p class="wp-block-paragraph">Egal welchen Weg ihr einschlagt, im Zentrum steht mindestens eine gut gepflegte Figma-Komponenten-Bibliothek, im besten Fall ein echtes Design System, das Design-Komponenten, Code Komponenten, sowie zahlreiche Regeln zur Verwendung der Elemente inkl. Sprachregelungen usw. umfasst. Ein solches System ist der Ort, an dem das gesammelte Wissen des Teams verschriftlicht ist. Je vollständiger und sauberer, desto besser sind die Ergebnisse, die eine KI daraus ableiten kann. </p>



<p class="wp-block-paragraph">Eine Figma- oder Code-Bibliothek existiert in vielen Unternehmen bereits oder wird gerade aufgebaut. In der Praxis liegt sie allerdings häufig nicht in der Qualität vor, die für KI-Workflows nötig ist. Das betrifft weniger die visuelle Seite als die inhaltlichen und konzeptionellen Aspekte. Oft fehlt zum Beispiel eine saubere Beschreibung des Zwecks einer Komponente, ihrer Einsatzsituationen und ihrer Rahmenbedingungen. Genau dieses Wissen aber braucht die KI, um sinnvolle Entscheidungen treffen zu können.</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="1964" height="1072" src="https://media.kulturbanause.de/2026/08/component-discription-figma.webp" alt="" class="wp-image-42133" srcset="https://media.kulturbanause.de/2026/08/component-discription-figma.webp 1964w, https://media.kulturbanause.de/2026/08/component-discription-figma-300x164.webp 300w, https://media.kulturbanause.de/2026/08/component-discription-figma-1024x559.webp 1024w, https://media.kulturbanause.de/2026/08/component-discription-figma-1536x838.webp 1536w, https://media.kulturbanause.de/2026/08/component-discription-figma-240x131.webp 240w, https://media.kulturbanause.de/2026/08/component-discription-figma-330x180.webp 330w, https://media.kulturbanause.de/2026/08/component-discription-figma-495x270.webp 495w, https://media.kulturbanause.de/2026/08/component-discription-figma-500x273.webp 500w" sizes="(max-width: 1964px) 100vw, 1964px" /><figcaption class="wp-element-caption">Beispiel für eine größere CTA-Komponente inkl. Beschreibung in Figma</figcaption></figure>



<h2 id="h-ki-als-unterstutzung-im-design" class="wp-block-heading">KI als Unterstützung im Design</h2>



<p class="wp-block-paragraph">Design-Teams, die bereits in Figma arbeiten, können durch KI direkt in Figma unterstützt werden. Es gibt dafür z.B. in Figma integrierte kleinere KI-Funktionen zum Aufräumen der Datei oder zum Erzeugen und Bearbeiten von Bildern. Ihr Zweck ist es in erster Linie, das Team im Arbeitsablauf zu beschleunigen, wiederkehrende Aufgaben abzunehmen, für Konsistenz zu sorgen und Fehler zu vermeiden.</p>



<p class="wp-block-paragraph">Auch Agenten können für solche Aufgaben eingesetzt werden, doch normalerweise kommen Agenten für komplexere und größere Aufgaben zum Einsatz. Daher gehen wir auf die integrierten KI Mini-Tools hier nicht im Detail ein.  </p>



<h2 id="h-von-der-idee-zum-design" class="wp-block-heading">Von der Idee zum Design</h2>



<p class="wp-block-paragraph">Interessant wird es, wenn Konzeption und Prototyping selbst weitgehend selbstständig, also agentisch, erledigt werden sollen. Ziel ist das Erstellen von Screens in einem professionellen, markentreuen und konsistenten Look; möglicherweise sollen sogar klickbare Prototypen entstehen. Dafür braucht es zwingend eine Bibliothek mit allen benötigten Komponenten. Und diese Komponenten müssen nicht nur existieren, sondern vor allem inhaltlich gut beschrieben und organisiert sein.</p>



<p class="wp-block-paragraph">Das bedeutet konkret: Jede Komponente hat einen Namen und eine ausführliche Beschreibung. Diese Beschreibung erklärt den Zweck der Komponente, in welchen Situationen sie eingesetzt wird, was vermieden werden sollte und welche Rahmenbedingungen gelten. Alles, was einem Design-Team konzeptionell im Kopf schlummert, muss verschriftlicht werden. Dokumentiert wird dies z.B. in der Beschreibung der Komponenten oder, noch feiner, in der Beschreibung einzelner Varianten.</p>



<p class="wp-block-paragraph">Ist das erfüllt, könnt ihr euch den Ablauf so vorstellen: Ihr nutzt den Agenten in Figma (Design Agent) oder verbindet ein externes KI-Tool eurer Wahl mit eurer Datei via MCP. Anschließend formuliert ihr euren Konzeptionswunsch als Prompt, zum Beispiel sinngemäß »Erstelle eine neue Landingpage mit folgenden Zielen …« oder »Entwirf eine Smartphone-App für die Steuerung unsere Maschine XY mit folgenden Funktionen …«. Weil die Bibliothek alle nötigen Informationen bereithält, entstehen daraus Entwürfe in sehr guter Qualität, etwa ein klickbarer Prototyp oder einzelne Screens.</p>



<figure class="wp-block-video"><video height="2160" style="aspect-ratio: 3840 / 2160;" width="3840" autoplay loop muted src="https://media.kulturbanause.de/2026/08/figma-design-agent-design-system-workflow.mp4" playsinline></video><figcaption class="wp-element-caption">Automatische Erstellung von Wireframes in Figma auf Grundlage unseres Design Systems. Das Video ist beschleunigt und gekürzt, der Prozess hat ca. 10m gedauert. </figcaption></figure>



<h2 id="h-von-design-zu-code" class="wp-block-heading">Von Design zu Code</h2>



<p class="wp-block-paragraph">Der zweite große Anwendungsfall ist die Überführung des Designs in Code. Einerseits sollen so native Prototypen hergestellt werden, die im Browser laufen und leicht im Code angepasst werden können, andererseits soll tatsächlich der produktionsreife Code einer Website oder Applikation entstehen. </p>



<p class="wp-block-paragraph">In beiden Fällen ist es enorm wichtig, dass die Ergebnisse erwartbar und konsistent sind. Die KI darf sich bei der Umsetzung eines Buttons nicht beim ersten Mal so und beim nächsten Mal anders entscheiden. Produktionsreif bedeutet vor allem, dass die Qualität den Anforderungen entspricht. </p>



<h3 id="h-die-code-bibliothek-soll-neu-aufgebaut-werden" class="wp-block-heading">Die Code-Bibliothek soll neu aufgebaut werden</h3>



<p class="wp-block-paragraph">Wenn bereits eine Design-Bibliothek in Figma existiert, und die passende Code-Bibliothek daraus abgeleitet aufgebaut werden soll, muss die Vorlage nahezu perfekt sein. Sie muss alle Figma-Standardanforderungen an Bibliotheken erfüllen wie z.B. ein konsequent verwendetes Auto-Layout, Variablen für alles und eine saubere Organisation nach <a href="https://kulturbanause.de/faq/atomic-design-acss/" data-type="faq" data-id="12299">Atomic Design</a> mit Komponenten und Varianten. Verschiedene Tools und Linter helfen dabei, Fehler zu erkennen und zu beheben.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="2560" height="1673" src="https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-scaled.webp" alt="" class="wp-image-42140" srcset="https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-scaled.webp 2560w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-300x196.webp 300w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-1024x669.webp 1024w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-1536x1004.webp 1536w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-2048x1338.webp 2048w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-240x157.webp 240w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-276x180.webp 276w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-413x270.webp 413w, https://media.kulturbanause.de/2026/08/figma-linter-ai-readyness-500x327.webp 500w" sizes="(max-width: 2560px) 100vw, 2560px" /><figcaption class="wp-element-caption">Auf »AI Readyness« geprüfte Button-Komponente: Hier besteht z.&nbsp;B. noch Optimierungsbedarf bei einigen Tokens und bei der Beschreibung. </figcaption></figure>



<p class="wp-block-paragraph">Der Anspruch muss sehr hoch sein. Besonders bei den <a href="https://kulturbanause.de/blog/design-tokens/" data-type="post" data-id="40946">Design Tokens</a>, also den Figma-Variablen, muss die Umsetzung exakt stimmen, damit am Ende sauberer Code in der gewünschten Syntax herauskommt. Wenn, wie zuvor bereits beschrieben, alle Komponenten mit detaillierten Beschreibungen ausgestattet sind, können auch Entscheidungen zur Barrierefreiheit besser getroffen werden. Denn dann geht es nicht nur darum, wie ein Element aussieht, sondern darum, wie und wofür es verwendet wird. Die KI kann folglich semantische Entscheidungen deutlich besser treffen.</p>



<p class="wp-block-paragraph">Technisch verbindet ihr Figma über den MCP-Server mit eurem KI-Tool. Anschließend solltet ihr schrittweise vorgehen. Vermeidet es, die gesamte Figma-Datei in einem einzigen Prompt zu referenzieren, sondern arbeitet strukturiert und schrittweise. Zuerst werden die Variablen ausgelesen und die Variablen-Struktur angelegt, idealerweise abstrahiert über ein offenes, JSON-basiertes Token-Format. Anschließend arbeitet ihr euch entlang des Atomic Design-Ansatz von klein nach groß durch die Bibliothek: erst die einzelnen Atome, dann die daraus zusammengesetzten Moleküle, dann die Organismen, also größere Elemente wie wiederkehrende Sinnabschnitte (Pattern, Module). Im letzten Schritt folgen Templates und schließlich vielleicht sogar Flows. Dieses schrittweise, aufeinander aufbauende Vorgehen spart euch viele Tokens, führt zu konsistenteren Ergebnissen und ergibt ein sauber strukturiertes System.</p>



<figure class="wp-block-video"><video height="2160" style="aspect-ratio: 3840 / 2160;" width="3840" autoplay controls loop muted src="https://media.kulturbanause.de/2026/08/figma-button-component-to-code-workflow.mp4" playsinline></video><figcaption class="wp-element-caption">Automatische Umsetzung einer Button-Komponente aus Figma mittels Claude Code und einem Figma-Skill in VS Code. Video gekürzt und beschleunigt, die tatsächliche Umsetzung hat ca. 10m gedauert. </figcaption></figure>



<h3 id="h-es-gibt-bereits-eine-code-bibliothek" class="wp-block-heading">Es gibt bereits eine Code-Bibliothek</h3>



<p class="wp-block-paragraph">Wenn neben der Figma-Bibliothek bereits eine Code-Bibliothek existiert, deren Komponenten in einem Repository o.ä, liegen, kommt das Figma-Feature »Code Connect« ins Spiel. Mittels Code Connect verknüpft ihr eine Komponente aus der Figma-Bibliothek mit ihrem Gegenstück im Code.</p>



<p class="wp-block-paragraph">Die Vorteile dieses Vorgehens sind deutlich spürbar. Setzt ein KI-Agent eine Ansicht um und stößt auf verknüpfte Komponenten, erfindet er deren Code nicht neu, sondern greift auf die bestehende Codebasis zu. Das spart Tokens und sorgt für noch konsistentere Ergebnisse. Diese Konstellation Figma-Bibliothek plus verknüpfte Code-Bibliothek, ist der Idealfall. </p>



<p class="wp-block-paragraph">Code Connect ist Teil der höheren Figma-Lizenzmodelle und lässt sich auf zwei Arten nutzen. Die einfache Variante ist die Verwendung über die Figma-Benutzeroberfläche (<a href="https://kulturbanause.de/blog/figma-code-connect-ui-komponenten-mit-production-ready-code-verknuepfen/" data-type="post" data-id="41088">Code Connect UI</a>). Hier verbindet ihr Komponenten per Klick und könnt der Verbindung zusätzliche Notizen für die KI mitgeben. Die zweite Variante läuft über die Kommandozeile und integriert Code Connect direkt in die Codebasis (Code Connect CLI). Neben den eigentlichen Code-Dateien liegen dann zusätzliche Dateien, die festhalten, welche Figma-Komponente zu welcher Code-Komponente gehört. Dabei lässt sich sehr differenziert abbilden, welche Eigenschaften und States im Code welchen Varianten im Design entsprechen. Das ist aufwendig, weshalb Figma für diesen Fall unter anderem einen <a href="https://kulturbanause.de/faq/agent-skills/" data-type="faq" data-id="41136">Skill</a> für die KI bereitstellt.</p>



<p class="wp-block-paragraph">Wenn ihr eine gut verknüpfte Code-Bibliothek hat, könnte ihr theoretisch Qualität in der Figma-Datei einsparen, weil der Agent die Details dort im Idealfall gar nicht mehr interpretieren muss. Als Empfehlung möchten wir das aber nicht verstanden wissen, denn eine saubere Design-Bibliothek zahlt an vielen anderen Stellen auf die Qualität ein.</p>



<h3 id="h-die-design-bibliothek-soll-aus-dem-code-abgeleitet-werden" class="wp-block-heading">Die Design-Bibliothek soll aus dem Code abgeleitet werden</h3>



<p class="wp-block-paragraph">Seltener, in der Praxis aber durchaus sinnvoll, ist die <a href="https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/" data-type="post" data-id="41143">umgekehrte Richtung</a>. Frontend-affine Teams haben häufig bereits eine Code-Bibliothek in sehr guter Qualität, aber noch keine gepflegte Figma-Bibliothek. Um diese automatisch zu erzeugen, kann der Code über den MCP-Server ausgelesen und daraus die Design-Bibliothek in Figma abgeleitet werden. Variablen und Komponenten werden dann in Figma automatisiert erzeugt.</p>



<p class="wp-block-paragraph">Weil der Code oft die verlässlichere und höherwertige Quelle ist, entsteht so eine Design-Bibliothek, die sauber zum bestehenden Code passt. Wir haben das in mehreren Projekten umgesetzt, unter anderem bei unserem eigenen <a href="https://wp-design-system.com/" target="_blank" rel="noreferrer noopener">Design System für WordPress-Projekte</a>.</p>



<p class="wp-block-paragraph">Auch bei diesem Setup sollte schrittweise vorgegangen werden: Zunächst die Variablen, dann der Rest nach Atomic Design. Da im Browser mitunter CSS-Features verwendet wurden, die Figma nicht abbilden kann, müssen kleinere Abstriche in Kauf genommen werden.</p>



<h2 id="h-die-strategische-frage-wo-liegt-das-original" class="wp-block-heading">Die strategische Frage: Wo liegt das Original?</h2>



<p class="wp-block-paragraph">Sobald Bibliotheken in Design und Code existieren, stellt sich die klassische Frage: Wo liegt die sog. »Single Source of Truth« – also das Original? Habt ihr eine Komponente erst im Design entworfen und den Code daraus abgeleitet, oder umgekehrt? Und wenn ihr etwas ändert, an welcher Stelle macht ihr das zuerst, und wo muss es nachgezogen werden? Dieselbe Frage betrifft die Design Tokens, also ob die Variablen in Figma oder im Code das Original sind, und ebenso die Dokumentation, ob ihr sie in Markdown-Dateien im Repository oder in den Figma-Komponenten pflegt.</p>



<p class="wp-block-paragraph">Durch KI können sogenannte bidirektionale Workflows eingerichtet werden, wodurch diese Frage an Schärfe verliert. Änderungen lassen sich so synchronisieren, dass sie an einer Stelle vorgenommen und automatisch an allen anderen nachgezogen werden. Ändert ihr eine Variable im Code, erkennt der Agent das und trägt sie in Figma nach. Ändert ihr sie in Figma, geschieht dasselbe umgekehrt. Aus einem einzigen Original wird ein Netz aus synchronisierten Originalen in verschiedenen Umgebungen.</p>



<p class="wp-block-paragraph">Trotzdem haben wir eine klare Empfehlung, die wir auch selbst beherzigen. Versucht, möglichst wenige Abhängigkeiten zu einzelnen Plattformen aufzubauen. Praktisch bedeutet das, die Variablen im Standard für Design Tokens zu definieren, die Komponenten-Beschreibungen in Markdown-Dateien im eigenen Projekt zu dokumentieren und Code Connect über die Kommandozeile direkt ins Repository zu integrieren. So habt ihr versionierbare Dateien in Standardformaten, auf die ihr jederzeit zugreifen könnt und die euch niemand wegnehmen kann.</p>



<p class="wp-block-paragraph">Der scheinbare Nachteil, dass Beschreibungen in Markdown-Dateien in Figma zunächst nicht sichtbar sind, lässt sich mit KI leicht auflösen. Ihr weist den Agenten an, das Komponenten-Verzeichnis zu lesen und die Beschreibungen über die <a href="https://kulturbanause.de/faq/mcp/" data-type="faq" data-id="36340">MCP-Schnittstelle</a> in die passenden Figma-Komponenten einzutragen. Auch das lässt sich bidirektional einrichten, sodass Beschreibungen immer aktuell sind.</p>



<h2 id="h-wo-die-anweisungen-hinterlegt-werden" class="wp-block-heading">Wo die Anweisungen hinterlegt werden</h2>



<p class="wp-block-paragraph">Egal ob aus einer Idee ein Prototyp oder aus einem fertigen Design sauberer Code entstehen soll, ihr müsst entscheiden, wo ihr die Anweisungen hinterlegen möchtet, die den Prozess steuern und für konsistente Ergebnisse sorgen. Was genau ihr mit Figma, Code und KI macht ist dabei zweitrangig. Entscheidend ist, dass die KI bei gleicher Aufgabe immer vergleichbar arbeiten muss.</p>



<p class="wp-block-paragraph">Ihr könnt Vorgaben auf verschiedenen Ebenen festlegen, zum Beispiel zentral für die gesamte Organisation, pro Projekt oder individuell pro User.</p>



<p class="wp-block-paragraph">Dafür habt ihr zwei Wege. Entweder legt ihr die Vorgaben direkt beim KI-Anbieter fest, etwa über das Web-Interface. Oder ihr steuert sie auf Dateiebene, meist im Markdown-Format, über Instruktionsdateien wie eine claude.md oder über sogenannte Skills. Auch diese Dateien könnt ihr flexibel platzieren, zum Beispiel auf dem eigenen Rechner, im Repository eines Projekts oder verbindlich für die ganze Organisation.</p>



<p class="wp-block-paragraph">Welcher Weg der beste ist, hängt davon ab, wie das Team arbeitet und womit es die verlässlichsten Ergebnisse erzielt. Unsere Empfehlung geht in dieselbe Richtung wie zuvor bei der Dokumentation der Komponenten. Wir möchten möglichst geringe Abhängigkeit von einzelnen Plattformanbietern. In der Praxis bedeutet das, Anweisungen liegen eher in Markdown-Dateien und Skills. So lassen sie sich bei Bedarf zu einem anderen <a href="https://kulturbanause.de/faq/llms/" data-type="faq" data-id="36292">LLM</a>-Anbieter umziehen.</p>



<h2 id="h-fazit" class="wp-block-heading">Fazit</h2>



<p class="wp-block-paragraph">Die einzelnen Bausteine greifen ineinander. Am Zentrum steht in fast allen Szenarien eine saubere, gut beschriebene Komponenten-Bibliothek. Auf ihr baut die KI-Unterstützung im Design auf, auf ihr baut die Überführung in produktionsreifen Code auf, und sie ist auch die Grundlage dafür, Design und Code dauerhaft synchron zu halten. Die eigentliche Investition liegt weniger in Tools und Anbietern als in der Qualität und Dokumentation des Design Systems. Wenn ihr hier sauber arbeitet und die eigenen Daten in offenen Standards definiert, schafft ihr eine nachhaltige Grundlage für schnelle, konsistente und verlässliche Workflows, ohne euch von einer einzelnen Plattform abhängig zu machen. Selbst ohne KI hat diese Dokumentation einen großen Mehrwert. </p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-und-ki-agenten-automatisierte-workflows-von-der-idee-bis-zum-code/">Figma und KI-Agenten: Automatisierte Workflows von der Idee bis zum Code</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-und-ki-agenten-automatisierte-workflows-von-der-idee-bis-zum-code/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		<enclosure url="https://media.kulturbanause.de/2026/08/figma-design-agent-design-system-workflow.mp4" length="9867221" type="video/mp4" />
<enclosure url="https://media.kulturbanause.de/2026/08/figma-button-component-to-code-workflow.mp4" length="18898514" type="video/mp4" />

			</item>
		<item>
		<title>Design Tokens</title>
		<link>https://kulturbanause.de/blog/design-tokens/</link>
					<comments>https://kulturbanause.de/blog/design-tokens/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Wed, 22 Jul 2026 15:18:55 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Frontend-Development]]></category>
		<category><![CDATA[UI (User Interface)]]></category>
		<category><![CDATA[Workflow]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=40946</guid>

					<description><![CDATA[<p>Wenn Design- und Development-Teams (und KI-Agenten) gemeinsam und effizient Produkte umsetzen sollen, ist ein systematisch organisiertes Design-System Pflicht. Design Tokens sind das Fundament dafür, und seit Oktober 2025 gibt es mit dem W3C-Standard erstmals ein einheitliches Format. Wir fassen zusammen, was Tokens leisten, wie ihr sie strukturiert, benennt und konsistent haltet und wie sie in verschiedenen Systemen zum Einsatz kommen.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/design-tokens/">Design Tokens</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Design Tokens					
            </span>
        </h1>
        
        

	</div>

</header>





<p class="wp-block-paragraph">Design Tokens systematisieren die Charakteristika eines Designs. Entscheidungen zu Farben, Formen, Abständen, Schriftgrößen oder Animationen werden mittels Tokens dokumentiert und an zentraler Stelle organisiert. Menschen und Maschinen können sie schnell finden, auslesen und die korrekte Verwendung verstehen, was die Konsistenz eines Produkts verbessert und die Umsetzungsgeschwindigkeit erhöht. </p>



<p class="wp-block-paragraph">Design Tokens bilden das Fundament eines Design&nbsp;Systems und zählen neben Konzepten wie <a href="https://kulturbanause.de/faq/mobile-first/" type="faq" id="12729">Mobile&nbsp;First</a>, <a href="https://kulturbanause.de/faq/atomic-design-acss/" type="faq" id="12299">Atomic&nbsp;Design</a> und <a href="https://kulturbanause.de/faq/progressive-enhancement/" type="faq" id="12129">Progressive&nbsp;Enhancement</a> zu zentralen Konzepten bei der Gestaltung digitaler Produkte. Seit Oktober 2025 existiert ein W3C-Community-Standard, der bereits von zahlreichen Design-Tools unterstützt wird.</p>



<div class="cta-container"><aside class="cta"><div class="cta__trainings"><svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg" height="175" width="175"><use href="#icon-trainings"></svg><div><h2 class="cta__title" data-toc-heading-ignore>Schulungen von kulturbanause</h2><p>Intensive Trainings mit hohem Praxisbezug. Hands-On durchgeführt. Online oder Inhouse.<br></p><div class="cta__button-group"><a href="https://kulturbanause.de/beratung-trainings/remote-schulungen/" class="btn btn-primary">Online-Schulungen&nbsp;&rarr;</a></div></div></div></aside></div>



<p class="wp-block-paragraph"><div class="toc is-sticky" data-toc-container></div></p>



<h2 id="h-was-sind-design-tokens" class="wp-block-heading">Was sind Design Tokens?</h2>



<p class="wp-block-paragraph">In einem digitalen Design-Projekt wie einer Website oder Applikation müssen viele Entscheidungen getroffen werden und die meisten werden aus Gestaltgesetzen abgeleitet und folgen einer visuellen Hierarchie: Größere Elemente sind wichtiger als kleine; kräftigere Farben werden stärker wahrgenommen als blasse; geringe Abstände zwischen Elementen erzeugen Zusammengehörigkeit, größere Abstände schaffen inhaltlich Distanz.  </p>



<p class="wp-block-paragraph">Innerhalb des Projekts wiederholen sich diese Entscheidungen: Welche Farbe hat ein bestimmter Button? Wie groß ist der Abstand zwischen zwei Buttons? Welche Abrundung hat der Button und welche Abrundung das Objekt in dem der Button platziert ist?</p>



<p class="wp-block-paragraph">Design Tokens geben diesen Werten einen Namen. Statt beispielsweise den Farb-Code <code>#007c86</code> (petrol) direkt zu verwenden, referenziert ihr einen Token wie <code>button-primary-bg</code>. Der konkrete Wert wird zentral gepflegt und kann sich ändern, ohne dass jede Verwendungsstelle einzeln angepasst werden muss.</p>



<h3 id="h-typische-token-kategorien" class="wp-block-heading">Typische Token-Kategorien</h3>



<p class="wp-block-paragraph">Welche Tokens notwendig sind, hängt vom Projekt ab. Die folgenden Kategorien werden am häufigsten verwendet: </p>



<ul class="wp-block-list">
<li>Farben (Colors)</li>



<li>Schrift (Fonts)</li>



<li>Abstände (Spacing)</li>



<li>Abrundungen (Radius)</li>



<li>Schatten (Shadows / Elevation)</li>



<li>Animationen (Timing)</li>



<li>…</li>
</ul>



<figure class="wp-block-image size-full"><img decoding="async" width="1882" height="664" src="https://media.kulturbanause.de/2020/11/desing-tokens.png" alt="" class="wp-image-21411" srcset="https://media.kulturbanause.de/2020/11/desing-tokens.png 1882w, https://media.kulturbanause.de/2020/11/desing-tokens-300x106.png 300w, https://media.kulturbanause.de/2020/11/desing-tokens-1024x361.png 1024w, https://media.kulturbanause.de/2020/11/desing-tokens-1536x542.png 1536w, https://media.kulturbanause.de/2020/11/desing-tokens-240x85.png 240w, https://media.kulturbanause.de/2020/11/desing-tokens-510x180.png 510w, https://media.kulturbanause.de/2020/11/desing-tokens-765x270.png 765w, https://media.kulturbanause.de/2020/11/desing-tokens-500x176.png 500w" sizes="(max-width: 1882px) 100vw, 1882px" /><figcaption class="wp-element-caption">Beispiele für Design Tokens</figcaption></figure>



<h2 id="h-organisation-von-design-tokens" class="wp-block-heading">Organisation von Design Tokens</h2>



<p class="wp-block-paragraph">Die Token-Struktur sollte in erster Linie zum Projekt und dem Team passen, das am Projekt arbeitet. Teams mit überschaubarem Know-how und kleine Projekte profitieren möglicherweise nicht (zumindest nicht wirtschaftlich) von zu komplex geplanten Strukturen. </p>



<p class="wp-block-paragraph">Nichtsdestotrotz haben sich bei der Organisation und Benennung von Design Tokens mittlerweile klare Industriestandards entwickelt. Die folgende Vorgehensweise ist sehr verbreitet. </p>



<h3 id="h-abstraktionsebenen-von-design-tokens" class="wp-block-heading">Abstraktionsebenen von Design Tokens</h3>



<p class="wp-block-paragraph">Design Tokens werden in verschiedenen Ebenen (auch Gruppen, Collections) organisiert. Diese Ebenen beziehen sich aufeinander und abstrahieren Tokens dadurch. In der Praxis haben sich folgende Ebenen etabliert:</p>



<ul class="wp-block-list">
<li><strong>Primitive Tokens</strong> (auch <em>Base Tokens</em>) definieren die reine Palette. Die Benennung der Tokens orientiert sich am jeweiligen Wert. Z.B. <code>blue-600</code>, <code>radius-8</code>, <code>spacing-16</code>. Die primitiven Tokens beschreiben <em>was</em> ein Wert ist, nicht wofür er eingesetzt wird.</li>



<li><strong>Semantic Tokens</strong> (auch <em>Alias Tokens</em>) geben einem primitiven Wert eine Bedeutung. Sie beschreiben <em>wofür</em> ein Wert verwendet wird: <code>color-background</code>, <code>color-action</code>, <code>font-size-heading</code>.</li>



<li><strong>Component Tokens</strong> verbinden einen semantischen Wert mit dem konkreten UI-Element. Sie beschreiben <em>wo genau</em> ein Wert zum Einsatz kommt: <code>button-background</code>, <code>card-padding</code>.</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1988" height="522" src="https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen.webp" alt="" class="wp-image-41944" srcset="https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen.webp 1988w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-300x79.webp 300w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-1024x269.webp 1024w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-1536x403.webp 1536w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-240x63.webp 240w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-686x180.webp 686w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-1028x270.webp 1028w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-500x131.webp 500w" sizes="auto, (max-width: 1988px) 100vw, 1988px" /><figcaption class="wp-element-caption">Beispiel für Abstraktionsebenen bei Farben: Die Farbe Blau wird als Aktionsfarbe definiert und kommt in zwei Elementen zum Einsatz. </figcaption></figure>



<p class="wp-block-paragraph">Die Ebenen referenzieren einander: <code>blue-600</code> → <code>color-action</code> → <code>button-background</code>. Das wirkt zunächst nach Overhead, hat aber entscheidende Vorteile. Ändert sich im zuvor beschriebenen Beispiel z.B. der blaue Farbton des gesamten Systems, wird nur ein einziger primitiver Token angepasst (<code>blue-600</code>) und die Änderung vererbt sich durch alle Ebenen. Wenn die generelle Farbe für interaktive Elemente (Action Elemente) verändert werden soll, reicht die Anpassung des semantischen Tokens <code>color-action</code>. Soll hingegen nur der Button eine andere Farbe bekommen, wird nur dessen Component Token <code>button-background</code> geändert.</p>



<p class="wp-block-paragraph">Die Ebene der semantischen Tokens wird nicht zwingend verwendet oder nur in Teilen. In solchen Fällen werden Primitives direkt auf Component Tokens »gemapped«. Semantische Tokens sollten vor allem dort verwendet werden, wo sog. »Modes« Sinn machen. </p>



<p class="wp-block-paragraph"><strong>Modes</strong> (auch <em>Kontext</em> / <em>Themes</em>)<br>Ab der 2. Abstraktionsebene kommen die sog. Modes ins Spiel. Ein Mode wird dann relevant, wenn der Wert eines Tokens sich in verschiedenen Situationen ändern soll. Farben unterscheiden sich beispielsweise zwischen Light Mode und Dark Mode. Abstände und Schriftgrößen ändern sich häufig in Abhängigkeit zur Viewport-Größe. Im CSS-Code werden die Modes häufig mit Media Queries realisiert.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1988" height="848" src="https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes.webp" alt="" class="wp-image-42040" srcset="https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes.webp 1988w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-300x128.webp 300w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-1024x437.webp 1024w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-1536x655.webp 1536w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-240x102.webp 240w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-422x180.webp 422w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-633x270.webp 633w, https://media.kulturbanause.de/2026/07/design-tokens-abstraktionsebenen-modes-500x213.webp 500w" sizes="auto, (max-width: 1988px) 100vw, 1988px" /><figcaption class="wp-element-caption">Einsatz von Modes ab der 2. Abstraktionsebene. </figcaption></figure>



<h3 id="h-benennung" class="wp-block-heading">Benennung</h3>



<p class="wp-block-paragraph">Für die Benennung von Design Tokens gibt es keinen formalen Standard, aber eine <a href="https://medium.com/eightshapes-llc/naming-tokens-in-design-systems-9e86c7444676" target="_blank" rel="noreferrer noopener">gängige Praxis</a>. Der Name eines Tokens setzt sich aus mehreren Segmenten zusammen, die von allgemein nach spezifisch angeordnet werden. Nicht jedes Segment kommt in jedem Token vor und die Reihenfolge weicht je nach System leicht ab.</p>



<ul class="wp-block-list">
<li><strong>Namespace</strong> (optional): Ein Präfix für Systeme, Marken oder Themes</li>



<li><strong>Kategorie</strong>: die Art des Wertes, z.B. <code>color</code>, <code>spacing</code>, <code>font</code></li>



<li><strong>Komponente</strong>: das konkrete UI-Element, z.B. <code>button</code>, <code>card</code></li>



<li><strong>Variante</strong>: die Ausprägung, z.B. <code>primary</code>, <code>danger</code>, <code>subtle</code></li>



<li><strong>Eigenschaft</strong>: wofür der Wert steht, z.B. <code>background</code>, <code>text</code>, <code>border</code></li>



<li><strong>Zustand</strong>: der Interaktionszustand, z.B. <code>hover</code>, <code>focus</code>, <code>disabled</code></li>



<li><strong>Skala</strong>: die Abstufung, z.B. <code>100</code> bis <code>900</code> oder <code>sm</code> / <code>md</code> / <code>lg</code></li>
</ul>



<p class="wp-block-paragraph">Die Ordnung von allgemein nach spezifisch ist sinnvoll, da zusammengehörige Tokens so beieinander stehen und Ordnerstrukturen bei der Organisation von Tokens (z.B. in Figma) problemlos überführt werden können. In der Praxis werden dann beispielsweise folgende Namen verwendet: </p>



<ul class="wp-block-list">
<li>Primitive Tokens: <code>color-red-500</code></li>



<li>Semantic Tokens: <code>color-danger</code></li>



<li>Component Tokens: <code>button-danger-background-hover</code>, <code>card-padding</code></li>
</ul>



<h3 id="h-typische-fehler-im-zusammenhang-mit-design-tokens" class="wp-block-heading">Typische Fehler im Zusammenhang mit Design Tokens</h3>



<p class="wp-block-paragraph">Ein häufiger Fehler ist, visuelle Eigenschaften im Namen von nicht-primitiven Tokens zu kodieren. Ein Token wie <code>button-red</code> macht Ärger, sobald der Button nicht mehr rot ist. </p>



<p class="wp-block-paragraph">Auch plattformspezifische Einheiten in Namen wie <code>spacing-16px</code> sollten vermieden werden. Der Wert <code>16px</code> gehört in die Token-Definition, nicht in den Namen, da im Code z.B. nicht mit Pixeln, sondern mit der Einheit <code>em</code> gearbeitet wird. Namen müssen Bedeutung kommunizieren, keine Implementierungsdetails.</p>



<p class="wp-block-paragraph">Lästig wird es auch, wenn die Benennung zu wenig Freiraum für Skalierung bietet. <code>font-tiny</code> oder <code>font-largest</code> machen es schwierig noch sinnvolle Namen oberhalb oder unterhalb der Liste zu finden. </p>



<p class="wp-block-paragraph">Zuletzt müssen die Ebenen (Collections) so organisiert sein, dass die Tokens, die auf gleiche Modes reagieren, gruppiert sind. Nicht sinnvoll ist es beispielsweise, Farben und Abstände in einer Sammlung zusammenzufassen, da Farben i.d.R. nicht auf Modes wie »small« und »large« reagieren und Abstände nicht auf »Light Mode« und »Dark Mode«.  </p>



<h2 id="h-beispiel-eine-card-in-light-und-dark-mode" class="wp-block-heading">Beispiel: Eine Card in Light und Dark Mode</h2>



<p class="wp-block-paragraph">Schauen wir uns eine einfache Card mit Überschrift, Text und Button an. Die »Primitive Tokens« bilden die Palette, die »Semantic Tokens« ordnen die Werte einem Kontext zu.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1472" height="606" src="https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode.webp" alt="" class="wp-image-41941" srcset="https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode.webp 1472w, https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode-300x124.webp 300w, https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode-1024x422.webp 1024w, https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode-240x99.webp 240w, https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode-437x180.webp 437w, https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode-656x270.webp 656w, https://media.kulturbanause.de/2026/07/card-demo-light-dark-mode-500x206.webp 500w" sizes="auto, (max-width: 1472px) 100vw, 1472px" /><figcaption class="wp-element-caption">Visualisierung des Beispiels: Eine Card-Komponente in Light und Dark Mode</figcaption></figure>



<h3 id="h-primitive-tokens-nur-fur-das-beispiel-relevante-angaben" class="wp-block-heading"><strong>Primitive Tokens</strong> (nur für das Beispiel relevante Angaben)</h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Token</th><th>Wert</th></tr></thead><tbody><tr><td><code>colors/black</code></td><td><code>#000000</code></td></tr><tr><td><code>colors/white</code></td><td><code>#FFFFFF</code></td></tr><tr><td><code>colors/gray-100</code></td><td><code>#eeeeee</code></td></tr><tr><td><code>colors/gray-900</code></td><td><code>#1A1A2E</code></td></tr><tr><td><code>colors/blue-400</code></td><td><code>#6699FF</code></td></tr><tr><td><code>colors/blue-600</code></td><td><code>#0055FF</code></td></tr><tr><td><code>spacing/space-2</code></td><td><code>0.5em</code></td></tr><tr><td><code>spacing/space-4</code></td><td><code>1em</code></td></tr></tbody></table></figure>



<h3 id="h-semantic-tokens-inkl-modes" class="wp-block-heading"><strong>Semantic Tokens inkl. Modes</strong></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Token</th><th>Light Mode Referenz</th><th>Dark Mode Referenz</th></tr></thead><tbody><tr><td><code>background</code></td><td>→ <code>colors/white</code></td><td>→ <code>colors/black</code></td></tr><tr><td><code>color-surface</code></td><td>→ <code>colors/gray-100</code></td><td>→ <code>colors/gray-900</code></td></tr><tr><td><code>color-on-surface</code></td><td>→ <code>colors/gray-900</code></td><td>→ <code>colors/white</code></td></tr><tr><td><code>color-action</code></td><td>→ <code>colors/blue-600</code></td><td>→ <code>colors/blue-400</code></td></tr><tr><td><code>color-on-action</code></td><td>→ <code>colors/white</code></td><td>→ <code>colors/white</code></td></tr></tbody></table></figure>



<h3 id="h-component-tokens" class="wp-block-heading"><strong>Component Tokens</strong></h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Token</th><th>Referenz</th></tr></thead><tbody><tr><td><code>body</code></td><td>→ <code>background</code></td></tr><tr><td><code>card-bg</code></td><td>→ <code>color-surface</code></td></tr><tr><td><code>card-text</code></td><td>→ <code>color-on-surface</code></td></tr><tr><td><code>card-padding</code></td><td>→ <code>spacing/space-4</code></td></tr><tr><td><code>button-bg</code></td><td>→ <code>color-action</code></td></tr><tr><td><code>button-text</code></td><td>→ <code>color-on-action</code></td></tr><tr><td><code>button-padding-x</code></td><td>→ <code>spacing/space-4</code></td></tr><tr><td><code>button-padding-y</code></td><td>→ <code>spacing/space-2</code></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Die Card- und Button-Komponente referenzieren jeweils nur <code>*-surface</code>, <code>*-text</code> und <code>padding</code>. Beim Wechsel zwischen Light und Dark Mode wird kein einziger Wert in der Komponente geändert, sondern nur die Zuordnung der Semantic Tokens zu den Primitives getauscht. Die Spacing-Tokens werden in der semantischen Palette übersprungen, da unser Beispiel keinen Mode für Spacings hat. </p>



<h2 id="h-wo-leben-design-tokens" class="wp-block-heading">Wo »leben« Design Tokens?</h2>



<p class="wp-block-paragraph">In der Praxis kommen Design Tokens an verschiedenen Stellen zum Einsatz. Beispielsweise im Design-Tool und im Code. Daher ist es von zentraler Bedeutung, dass Tokens so organisiert sind, dass die verschiedenen Einsatzbereiche kompatibel sind und leicht aktualisiert werden können. In einem Design-Tool wie Figma werden Tokens beispielsweise als Variablen definiert. Im CSS-Code als CSS-Variablen. Als universelles Austausch-Format ist JSON etabliert und im Webstandard definiert.</p>



<p class="wp-block-paragraph">Auch stellt sich die Frage nach der <a href="https://kulturbanause.de/faq/single-source-of-truth-ssot/" data-type="faq" data-id="19419">Single Source Of Truth</a> (SSOT). Wo werden die Tokens zentral dokumentiert und wer »liest« die Tokens nur aus? In direktem Zusammenhang stehen auch Fragen zu Workflow und Verantwortung im Team: Wird im Design-Tool begonnen, im Code oder gar parallel?</p>



<h3 id="h-design-first-workflow" class="wp-block-heading">Design First-Workflow</h3>



<p class="wp-block-paragraph">In den meisten Projekten ist das Design-Dokument die zentrale Stelle (SSOT) und definiert alle Variablen. Wenn das Projekt technisch umgesetzt wird, lesen Developer oder KI-Agenten die Variablen aus und übertragen sie auf die Code-Basis. Dieser Prozess ist weitestgehend automatisiert. Die Verantwortung liegt vorrangig im Design-Team. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2560" height="1300" src="https://media.kulturbanause.de/2026/07/design-tokens-design-first-scaled.webp" alt="" class="wp-image-42023" srcset="https://media.kulturbanause.de/2026/07/design-tokens-design-first-scaled.webp 2560w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-300x152.webp 300w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-1024x520.webp 1024w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-1536x780.webp 1536w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-2048x1040.webp 2048w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-240x122.webp 240w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-355x180.webp 355w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-532x270.webp 532w, https://media.kulturbanause.de/2026/07/design-tokens-design-first-500x254.webp 500w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /><figcaption class="wp-element-caption">Design-First-Workflow mit zwei typischen Ansätzen: Entweder wird direkt aus dem Design-Tool in das passende Ziel-Format exportiert, oder wird zunächst in ein Universalformat exportiert und dann auf das passende Ziel-Format übertragen. Letzteres kommt vor allem dann zum Einsatz, wenn es mehr als eine Code-Umgebung gibt.</figcaption></figure>



<h3 id="h-code-first-workflow" class="wp-block-heading">Code First-Workflow</h3>



<p class="wp-block-paragraph">In Teams, die eine starke Frontend-Affinität aufweisen, ist oft der Code die SSOT. Die Tokens sind folglich im CSS oder JSON definiert und werden dort gepflegt. Wenn sie im Design-Tool benötigt werden, importiert man sie <a href="https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/" type="post" id="41082">mittels Plugin</a> oder <a href="https://kulturbanause.de/faq/mcp/" type="faq" id="36340">KI (MCP)</a>. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2560" height="1300" src="https://media.kulturbanause.de/2026/07/design-tokens-code-first-scaled.webp" alt="" class="wp-image-42027" srcset="https://media.kulturbanause.de/2026/07/design-tokens-code-first-scaled.webp 2560w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-300x152.webp 300w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-1024x520.webp 1024w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-1536x780.webp 1536w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-2048x1040.webp 2048w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-240x122.webp 240w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-355x180.webp 355w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-532x270.webp 532w, https://media.kulturbanause.de/2026/07/design-tokens-code-first-500x254.webp 500w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /><figcaption class="wp-element-caption">Code-First-Workflow mit zwei typischen Ansätzen: Entweder gibt es eine Code-Base, die mittels Plugin oder MCP direkt in das Design-Tool importiert wird, oder es gibt eine zentrale JSON-Datei mit allen Tokens, die einerseits im Design-Tool und andererseits in verschiedene Code-Umgebungen importiert werden kann. </figcaption></figure>



<h3 id="h-bidirektionaler-workflow-synced" class="wp-block-heading">Bidirektionaler Workflow (synced)</h3>



<p class="wp-block-paragraph">KI-gestützte und automatisierte Projekte erlauben auch das parallele Arbeiten und sog. <a href="https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/">bidirektionale Workflows</a>. Sobald ein Token in Code oder Design verändert, gelöscht oder hinzugefügt wird, aktualisieren sich die jeweils andere Stellen automatisch.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2560" height="1300" src="https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-scaled.webp" alt="" class="wp-image-42031" srcset="https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-scaled.webp 2560w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-300x152.webp 300w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-1024x520.webp 1024w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-1536x780.webp 1536w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-2048x1040.webp 2048w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-240x122.webp 240w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-355x180.webp 355w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-532x270.webp 532w, https://media.kulturbanause.de/2026/07/design-tokens-bidirektional-500x254.webp 500w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /><figcaption class="wp-element-caption">Bidirektionaler Workflow: Hierbei werden entweder zwei Tools direkt miteinander synchronisiert (i.d.R. über einen KI-Agenten) oder es findet ein Abgleich über ein Universalformat statt. </figcaption></figure>



<h2 id="h-design-tokens-im-web" class="wp-block-heading">Design Tokens im Web</h2>



<p class="wp-block-paragraph">Im Web werden Design Tokens typischerweise als CSS Custom Properties (CSS-Variablen) oder als Sass-Variablen umgesetzt. Das funktioniert Framework-unabhängig und eignet sich damit für kleine wie große Projekte gleichermaßen.</p>



<p class="wp-block-paragraph">Der CSS-Code des zuvor gezeigten Card-Beispiels: </p>



<pre class="wp-block-code language-css"><code>/* Primitive Tokens */
:root {
  --color-black: #000000;
  --color-white: #FFFFFF;
  --color-gray-100: #eeeeee;
  --color-gray-900: #1A1A2E;
  --color-blue-400: #6699FF;
  --color-blue-600: #0055FF;
  --spacing-2: 0.5em;
  --spacing-4: 1em;
}

/* Semantic Tokens – Light Mode (Default) */
:root {
  --background: var(--color-white);
  --color-surface: var(--color-gray-100);
  --color-on-surface: var(--color-gray-900);
  --color-action: var(--color-blue-600);
  --color-on-action: var(--color-white);
}

/* Semantic Tokens – Dark Mode */
@media (prefers-color-scheme: dark) {
  :root {
    --background: var(--color-black);
    --color-surface: var(--color-gray-900);
    --color-on-surface: var(--color-white);
    --color-action: var(--color-blue-400);
    --color-on-action: var(--color-white);
  }
}

/* Component Tokens */
:root {
  --body: var(--background);
  --card-bg: var(--color-surface);
  --card-text: var(--color-on-surface);
  --card-padding: var(--spacing-4);
  --button-bg: var(--color-action);
  --button-text: var(--color-on-action);
  --button-padding-x: var(--spacing-4);
  --button-padding-y: var(--spacing-2);
}
</code></pre>



<pre class="wp-block-code language-css"><code>/* Components */
body {
  background: var(--body);
}

.button {
  background: var(--button-bg);
  color: var(--button-text);
  padding: var(--button-padding-y) var(--button-padding-x);
}

.card {
  background: var(--card-bg);
  color: var(--card-text);
  padding: var(--card-padding);
}</code></pre>



<p class="wp-block-paragraph">Die Komponenten erhalten keinen einzigen konkreten Styling-Wert. Alles wird über Variablen gesteuert. Beim Wechsel in den Dark Mode tauscht der Browser automatisch die Werte.</p>



<h2 id="h-design-tokens-als-w3c-standard" class="wp-block-heading">Design Tokens als W3C-Standard</h2>



<h3 id="h-das-problem-ohne-standard" class="wp-block-heading">Das Problem ohne Standard</h3>



<p class="wp-block-paragraph">Bis 2025 gab es kein einheitliches Format, in dem Design Tokens zwischen Tools ausgetauscht werden konnten. In der Praxis sah das so aus: Designer definierten Tokens in Figma oder einem anderen Design-Tool, Developer konvertierten sie in CSS Variablen. Bei Änderungen wurde der Prozess wiederholt.</p>



<p class="wp-block-paragraph">Bei kleinen Projekten funktioniert das noch. Es wird aber schnell fehleranfällig, sobald mehrere Plattformen, Themes oder Marken im Spiel sind. Änderungen müssen in jedem Tool einzeln nachgezogen werden, und es gibt keine Garantie, dass die Werte überall identisch sind. Plugins und KI-Agenten haben den Prozess zwar deutlich vereinfacht, aber erst der Webstandard sorgt für einheitliche Prozesse.</p>



<h3 id="h-der-w3c-community-standard" class="wp-block-heading">Der W3C-Community-Standard</h3>



<p class="wp-block-paragraph">Im Oktober 2025 hat die <a href="https://www.designtokens.org/" target="_blank" rel="noreferrer noopener">Design Tokens Community Group</a> (DTCG) die erste stabile Version eines offenen, herstellerneutralen Formats veröffentlicht. Die Spezifikation definiert ein JSON-basiertes Austauschformat, mit dem Tokens zwischen unterschiedlichen Tools kompatibel sind. Zu den ab Start beteiligten Organisationen gehören unter anderem Adobe, Google, Microsoft, Salesforce und Figma.</p>



<p class="wp-block-paragraph">Ein einfaches Beispiel im W3C-Format (DTCG Standard):</p>



<pre class="wp-block-code language-json"><code>{
  "colors": {
    "blue-600": {
      "$type": "color",
      "$value": {
        "colorSpace": "srgb",
        "components": &#091;0, 0.33, 1],
        "hex": "#0055FF"
      }
    }
  },
  "color-action": {
    "$type": "color",
    "$value": "{colors.blue-600}",
    "$description": "Primary interactive color"
  }
}
</code></pre>



<p class="wp-block-paragraph">Jeder Token hat einen <code>$type</code> (z.B. <code>color</code>, <code>fontFamily</code>, <code>shadow</code>), einen <code>$value</code> und optionale Metadaten wie <code>$description</code>. Tokens können über die Alias-Syntax <code>{token-name}</code> auf andere Tokens verweisen, was dem Prinzip der zuvor beschriebenen Abstraktionsebenen entspricht. </p>



<p class="wp-block-paragraph">Die Spezifikation besteht aus drei Modulen: Das »Format Module« definiert die Grundstruktur für alle Token-Typen. Das »Color Module« definiert ein differenziertes Farbformat mit Unterstützung <a href="https://kulturbanause.de/blog/css-farben-in-der-praxis-von-hexadezimal-bis-oklch/" data-type="post" data-id="38118">moderner Farbräume wie OKLCH und Display P3</a>. Das »Resolver Module« beschreibt, wie kontextabhängige Varianten (Light/Dark, Marken, Gerätegrößen) organisiert werden, ohne Tokens zu duplizieren.</p>



<h3 id="h-konvertierung-der-w3c-tokens-in-das-ziel-format" class="wp-block-heading">Konvertierung der W3C Tokens in das Ziel-Format</h3>



<p class="wp-block-paragraph">Tools wie <a href="https://styledictionary.com/info/dtcg/" target="_blank" rel="noreferrer noopener">Style Dictionary</a> oder <a href="https://terrazzo.app/docs/guides/dtcg/" target="_blank" rel="noreferrer noopener">Terrazzo</a> lesen Token-Dateien im W3C-Format (DTCG&nbsp;Standard) ein und generieren daraus den gewünschten plattformspezifischen Output. Im Ergebnis stehen dann z.B. CSS-Variablen für das Web oder Swift-Code für iOS zur Verfügung. </p>



<h2 id="h-design-tokens-in-gangigen-tools-und-systemen" class="wp-block-heading">Design Tokens in gängigen Tools und Systemen</h2>



<p class="wp-block-paragraph">Die folgenden Systeme gehen Design Tokens unterschiedlich an, weil sie an verschiedenen Stellen des zuvor beschriebenen Workflows zum Einsatz kommen. Figma und Penpot sind Design-Tools, Tailwind CSS und Open Props liegen auf der CSS-Ebene. WordPress bringt als Plattform ein eigenes, vereinfachtes System mit. Anhand von Material Design zeigen wir abschließend, wie ein vollständiges Design System Tokens durchgängig organisiert.</p>



<h3 id="h-design-tokens-in-figma" class="wp-block-heading">Design Tokens in Figma</h3>



<p class="wp-block-paragraph">Figma hat mit »Variables« ein eigenes Token-System integriert. Variables können in sog. »Collections« organisiert werden und unterstützen pro Collection unterschiedliche »Modes« – also kontextabhängige Varianten wie Light und Dark. Die Variablen verschiedener Collections können sich auch gegenseitig referenzieren, wodurch die zuvor beschriebenen Abstraktionsebenen möglich sind. </p>



<p class="wp-block-paragraph">Figma unterstützt nativ den Export und Import von Design Tokens im W3C-Format. Über Plugins, die Figma API oder den Figma MCP können Variablen in verschiedenen Formaten exportiert und in die Entwicklungs-Umgebung integriert werden. Auch der umgekehrte Weg ist möglich – wiederum über Plugins oder Schnittstellen. Figma bietet sich somit für unterschiedliche Workflows an: Design First, Code First oder bidirektional. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2560" height="1653" src="https://media.kulturbanause.de/2026/07/figma-variables-scaled.webp" alt="" class="wp-image-42050" srcset="https://media.kulturbanause.de/2026/07/figma-variables-scaled.webp 2560w, https://media.kulturbanause.de/2026/07/figma-variables-300x194.webp 300w, https://media.kulturbanause.de/2026/07/figma-variables-1024x661.webp 1024w, https://media.kulturbanause.de/2026/07/figma-variables-1536x992.webp 1536w, https://media.kulturbanause.de/2026/07/figma-variables-2048x1322.webp 2048w, https://media.kulturbanause.de/2026/07/figma-variables-240x155.webp 240w, https://media.kulturbanause.de/2026/07/figma-variables-279x180.webp 279w, https://media.kulturbanause.de/2026/07/figma-variables-418x270.webp 418w, https://media.kulturbanause.de/2026/07/figma-variables-500x323.webp 500w" sizes="auto, (max-width: 2560px) 100vw, 2560px" /><figcaption class="wp-element-caption">Drei Variable-Collections in Figma: Primitive, Semantic und Component Tokens</figcaption></figure>



<p class="wp-block-paragraph">Gruppierte Tokens (Composite Tokens), die der Webstandard unterstützt, werden in Figma mittels »Styles« abgebildet. Da Styles allerdings nicht zusammen mit Variablen organisiert sind und folglich anders exportiert werden, ist dieses Feature suboptimal umgesetzt. </p>



<h3 id="h-design-tokens-in-penpot" class="wp-block-heading">Design Tokens in Penpot</h3>



<p class="wp-block-paragraph">Penpot, die Open-Source-Alternative zu Figma, ist sehr Frontend-affin und hat Design Tokens tief im Tool verankert und W3C-konform umgesetzt. Anders als bei Figma wird direkt der Standard genutzt und nicht über eine Zwischenebene aus proprietären Variables oder Styles hergestellt, die dann beim Export konvertiert werden. </p>



<p class="wp-block-paragraph">Ihr könnt in Penpot alle Abstraktionsebenen und zusammengefasste Tokens abbilden und in sog. »Sets« (Collections) sowie »Themes« (Modes) organisieren. Der Export erfolgt als natives W3C-JSON. </p>



<h3 id="h-design-tokens-in-tailwind-css" class="wp-block-heading">Design Tokens in Tailwind CSS</h3>



<p class="wp-block-paragraph">Tailwind CSS ist ein Token-ähnliches System, das in CSS-Variablen und Utility-Klassen überführt wird. Das Framework stellt eine sehr große Anzahl an primitiven Tokens zur Verfügung, deren Werte überschrieben werden können, um individuelle Anpassungen zu erlauben. Neben reinen Tokens wird allerdings auch das Layout-Verhalten auf gleiche Weise gesteuert, was die Organisation verwässert.</p>



<p class="wp-block-paragraph">Eine vollwertige semantische Ebene mit Modes (z. B. Light/Dark) bietet Tailwind nicht. Einfache Alias-Tokens lassen sich per Referenzierung anlegen, komplexere Setups <a href="https://www.maviklabs.com/blog/design-tokens-tailwind-v4-2026/" target="_blank" rel="noreferrer noopener">können durch Custom Code ergänzt werden</a>. Im Markup werden Light-/Dark-Mode, Breakpoint-abhängige Schriftgrößen etc. über sog. »Variants« (<code>dark:</code>, <code>md:</code> …) angesprochen.</p>



<h3 id="h-design-tokens-in-open-props" class="wp-block-heading">Design Tokens in Open Props</h3>



<p class="wp-block-paragraph"><a href="https://open-props.style/" target="_blank" rel="noreferrer noopener">Open Props</a> folgt dem Tokens-Prinzip, allerdings nur auf der Ebene der Primitive Tokens. Die CSS-Bibliothek liefert euch eine fertige Sammlung an CSS-Variablen für Farben, Abstände, Schriftgrößen, Schatten oder Animationen, organisiert in Skalen wie <code>--blue-0</code> bis <code>--blue-12</code>. Eine Semantic- oder Component-Ebene bringt Open Props nicht mit, diese muss selbst gebaut werden. </p>



<p class="wp-block-paragraph">Open Props-Tokens können im W3C-Format, als Figma-kompatible JSON-Datei und als Style-Dictionary-Tokens exportiert werden, sodass sich die primitive Ebene direkt in andere Tools übernehmen lässt.</p>



<h3 id="h-design-tokens-in-wordpress" class="wp-block-heading">Design Tokens in WordPress</h3>



<p class="wp-block-paragraph">WordPress nutzt bei sog. Block Themes ein Token-ähnliches, vereinfachtes System, das in der <code>theme.json</code> organisiert wird. In dieser zentralen Konfigurationsdatei werden Farben, Schriftgrößen und Abstände definiert, die WordPress automatisch in CSS-Variablen konvertiert. WordPress generiert z.B. Variablen wie <code>--wp--preset--color--blue-400</code>, die im Editor auswählbar und im Code referenzierbar sind.</p>



<p class="wp-block-paragraph">Die <code>theme.json</code> ist kein vollständiges Äquivalent zum W3C-Standard. Es gibt z.B. keine eingebauten Abstraktionsebenen oder Modes. Ob die Tokens in der <code>theme.json</code> eher als Primitive&nbsp;Tokens oder als Semantic&nbsp;Tokens organisiert werden, ist den Theme-Entwicklern freigestellt. Wir haben uns in <a href="https://wp-design-system.com/colors/" target="_blank" rel="noreferrer noopener">unserem Design System für WordPress</a> für primitive Tokens entschieden und abstrahieren diese über »Styled&nbsp;Sections« oder »Blocks«.</p>



<h3 id="h-design-tokens-in-popularen-designsystemen" class="wp-block-heading">Design Tokens in populären Designsystemen</h3>



<p class="wp-block-paragraph">Auch öffentlich dokumentierte Designsysteme sind eine gute Quelle, um die zuvor beschriebenen Konzepte an echten Beispielen nachzuvollziehen und zu vergleichen, wie Dinge im Code und im Design gelöst wurden. </p>



<ul class="wp-block-list">
<li><a href="https://m3.material.io/foundations/design-tokens/overview" target="_blank" rel="noreferrer noopener">Material Design</a><strong> </strong>von Google zeigt die drei Abstraktionsebenen so sauber wie kaum ein anderes System. </li>



<li><a href="https://atlassian.design/foundations/tokens/design-tokens" target="_blank" rel="noreferrer noopener">Atlassian</a> hat viel Arbeit in die Benennung von Tokens gesteckt und die Anatomie eines Token-Namens ausführlich dokumentiert. Der <a href="https://atlassian.design/components/tokens/all-tokens" target="_blank" rel="noreferrer noopener">Token Picker</a> bietet einen guten Zugang in ein sehr komplexes System. </li>
</ul>



<h2 id="h-fazit" class="wp-block-heading">Fazit</h2>



<p class="wp-block-paragraph">Design Tokens sind das Fundament, auf dem Konsistenz und Wartbarkeit eines digitalen Produkts aufbauen. In kleinen Projekten funktioniert vieles noch ohne durchdachte Struktur. Die Probleme tauchen erst mit steigender Skalierung auf, wenn mehrere Personen zusammenarbeiten müssen, Komponenten, Modes oder Produkte hinzukommen und jede nachträgliche Korrektur teuer wird. Daher empfehlen wir, die Überlegungen zu Abstraktionsebenen, Benennung und Modes früh anzustellen. </p>



<p class="wp-block-paragraph">Positiv ist die Entwicklung in zwei Bereichen: Mit dem W3C-Standard existiert erstmals ein herstellerneutrales Austauschformat, und KI-Agenten bzw. Automatismen übernehmen zunehmend die Übersetzung zwischen Design-Tool und Code. Beides zusammen wird den Weg von der Design-Entscheidung bis zum fertigen Code in Zukunft deutlich verkürzen.</p>



<p class="wp-block-paragraph">Die konzeptionellen Entscheidungen, welche Tokens es gibt und wie diese sinnvoll organisiert sind, nimmt euch niemand ab. Und die Verantwortung für Tokens liegt zukünftig wahrscheinlich stärker beim gesamten Team und nicht nur bei einem Gewerk.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/design-tokens/">Design Tokens</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/design-tokens/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Accessibility Overlays &#038; Overlay Tools – unsere Haltung dazu bei kulturbanause</title>
		<link>https://kulturbanause.de/blog/accessibility-overlays-overlay-tools-unsere-haltung-dazu-bei-kulturbanause/</link>
					<comments>https://kulturbanause.de/blog/accessibility-overlays-overlay-tools-unsere-haltung-dazu-bei-kulturbanause/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Tue, 23 Jun 2026 13:56:52 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Barrierefreiheit]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41787</guid>

					<description><![CDATA[<p>Accessibility-Overlays versprechen schnelle Barrierefreiheit für Websites und halten dieses Versprechen nicht. Wir setzen sie nicht ein und raten dringend davon ab.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/accessibility-overlays-overlay-tools-unsere-haltung-dazu-bei-kulturbanause/">Accessibility Overlays &amp; Overlay Tools – unsere Haltung dazu bei kulturbanause</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Accessibility Overlays &amp; Overlay Tools – unsere Haltung dazu bei kulturbanause					
            </span>
        </h1>
        
        

	</div>

</header>





<p class="wp-block-paragraph">Wir werden regelmäßig gefragt, ob wir Accessibility-Overlays für Websites einsetzen können oder die Nutzung empfehlen. Unsere Antwort ist klar: Nein. Warum wir hierzu eine so klare Haltung haben, fassen wir im Folgenden zusammen. </p>



<div class="cta-container"><aside class="cta"><div class="cta__banner"><img decoding="async" fetchpriority="low" src="https://kulturbanause.de/wp-content/themes/kulturbanause/assets/img/reader-a11y-cover.webp" alt="Cover der Readers" width="150" class="product-cover"><div><h2 class="cta__title" data-toc-heading-ignore>Reader: Barrierefreies Webdesign (eBook + PDF)</h2><p>Unsere besten Inhalte für alle, die barrierefreie Web-Projekte organisieren, gestalten oder technisch umsetzen möchten.</p><a href="https://shop.kulturbanause.de/produkt/reader-barrierefreies-webdesign-ueberblick-anforderungen-tipps-ebook-pdf/" class="btn btn-primary" target="_blank" rel="noopener">Im Shop anzeigen&nbsp;&rarr;</a></div></div></aside></div>


<div class="toc is-sticky" data-toc-container></div>



<h2 id="h-was-sind-accessibility-overlays-und-warum-werden-sie-angeboten" class="wp-block-heading">Was sind Accessibility Overlays und warum werden sie angeboten?</h2>



<p class="wp-block-paragraph">Ein Accessibility Overlay (auch Overlay Tool) ist ein JavaScript-Snippet, das nachträglich auf eine bestehende Website aufgesetzt wird und verspricht, diese automatisch barrierefrei oder zumindest barrierefreier zu machen. In der Regel erscheint ein Icon am Seitenrand, das per Klick einen Dialog öffnet, in dem Anpassungen wie Textgröße, Kontrast oder Animationen gesteuert werden können.</p>



<p class="wp-block-paragraph">Echte Barrierefreiheit ist aufwändig und der rechtliche Druck wächst. Auf den ersten Blick klingt das Tool eines solchen Anbieters daher verlockend: Es ist schnell eingebunden, soll die <a href="https://kulturbanause.de/blog/pruefschritte-der-wcag-bitv-im-ueberblick/" type="post" id="33152">Website WCAG-konform</a> machen, rechtliche Risiken minimieren und Menschen mit Behinderungen helfen. </p>



<p class="wp-block-paragraph">Leider ist das ist nicht der Fall.</p>



<h2 id="h-warum-wir-overlays-nicht-einsetzen-und-davon-abraten" class="wp-block-heading">Warum wir Overlays nicht einsetzen und davon abraten</h2>



<h3 id="h-sie-bieten-keinen-gleichwertigen-zugang" class="wp-block-heading">Sie bieten keinen gleichwertigen Zugang</h3>



<p class="wp-block-paragraph">Beginnen wir mit einem Punkt, der uns persönlich wichtig ist, auch wenn er nicht direkt in den Anforderungskatalogen abgebildet ist: Wir möchten für alle Menschen einen möglichst gleichwertigen Zugang zu Informationen und Funktionen schaffen. Ein Button, der per Klick Barrieren deaktiviert und nur von den Personen geklickt werden muss, die ohnehin bereits mit höherem Aufwand konfrontiert sind, wird diesem Anspruch nicht gerecht. </p>



<h3 id="h-overlays-funktionieren-technisch-nicht-zuverlassig" class="wp-block-heading">Overlays funktionieren technisch nicht zuverlässig</h3>



<p class="wp-block-paragraph">Overlays können fundamentale Barrierefreiheitsprobleme nicht lösen. Fehlerhafte <a href="https://kulturbanause.de/blog/einfuehrung-in-barrierearmes-webdesign-mit-wai-aria/" type="post" id="13844">ARIA-Auszeichnung</a> oder schlechte Tastaturnavigation lassen sich nicht per nachträglichem Script heilen. <a href="https://litzdigital.com/blog/4-reasons-an-overlay-widget-will-not-solve-your-accessibility-woes/" target="_blank" rel="noreferrer noopener">Litz Digital zeigt</a>, dass viele WCAG-Kriterien schlicht nicht automatisiert prüfbar sind.</p>



<h3 id="h-sie-verschlechtern-die-nutzererfahrung-fur-betroffene-menschen" class="wp-block-heading">Sie verschlechtern die Nutzererfahrung für betroffene Menschen</h3>



<p class="wp-block-paragraph">Menschen, die auf Hilfstechnologien angewiesen sind, haben ihren Browser und ihr Gerät bereits individuell konfiguriert. Ein Overlay, das diese Einstellungen überschreibt oder mit ihnen konkurriert, hilft nicht, es schadet. Hinzu kommt ein Performance-Problem: Das zusätzliche JavaScript belastet schwächere Geräte überproportional. Menschen mit Behinderungen sind laut <a href="https://www.a11yproject.com/posts/should-i-use-an-accessibility-overlay/" target="_blank" rel="noreferrer noopener">A11y Project</a> statistisch häufiger von wirtschaftlicher Benachteiligung betroffen, nutzen also öfter günstigere Hardware.</p>



<h3 id="h-sie-bieten-keinen-rechtlichen-schutz" class="wp-block-heading">Sie bieten keinen rechtlichen Schutz</h3>



<p class="wp-block-paragraph">Overlays werden häufig mit dem Versprechen des Rechtsschutzes verkauft. Worin das begründet sein soll, erschließt sich uns nicht, denn offizielle Stellen raten explizit von der Nutzung ab (s.u.). Laut <a href="https://litzdigital.com/blog/4-reasons-an-overlay-widget-will-not-solve-your-accessibility-woes/" target="_blank" rel="noreferrer noopener">Litz Digital</a> haben Klagen gegen Websites mit Overlays sogar zugenommen.</p>



<h3 id="h-sie-sind-datenschutzrechtlich-problematisch" class="wp-block-heading">Sie sind datenschutzrechtlich problematisch</h3>



<p class="wp-block-paragraph">Das <a href="https://overlayfactsheet.com/en/" target="_blank" rel="noreferrer noopener">Overlay Fact Sheet</a> weist darauf hin, dass einige Overlays den Einsatz von Hilfstechnologien erkennen und damit den Behinderungsstatus von Menschen ohne deren Einwilligung offenlegen. Manche Anbieter speichern diese Daten sogar seitenübergreifend mittels Cookies.</p>



<h3 id="h-sie-sind-ein-sicherheitsrisiko" class="wp-block-heading">Sie sind ein Sicherheitsrisiko</h3>



<p class="wp-block-paragraph">Overlays sind Drittanbieter-Scripte mit weitreichendem Zugriff auf die Website. Das <a href="https://www.a11yproject.com/posts/should-i-use-an-accessibility-overlay/" target="_blank" rel="noreferrer noopener">A11y Project</a> weist auf ein konkretes Beispiel hin: Das <a href="https://en.wikipedia.org/wiki/BrowseAloud#Malware" target="_blank" rel="noreferrer noopener">BrowseAloud-Overlay wurde gehackt</a> und missbraucht, um auf tausenden Websites Kryptowährungen zu schürfen. Manche Overlay-Scripte erkennen und deaktivieren außerdem Accessibility-Prüfwerkzeuge wie Axe oder WAVE, was eine unabhängige Qualitätsprüfung aktiv erschwert.</p>



<h3 id="h-barrierefreiheit-ist-ein-prozess" class="wp-block-heading">Barrierefreiheit ist ein Prozess</h3>



<p class="wp-block-paragraph">Echte Barrierefreiheit entsteht durch sorgfältige Konzeption, <a href="https://kulturbanause.de/blog/html-elemente-und-semantik/" type="post" id="14430">semantisch korrekten Code</a>, kontinuierliche Prüfung und das Einbeziehen von betroffenen Personen. Sie muss von Anfang an mitgedacht und stetig optimiert werden. Sie lässt sich nicht im Nachhinein überbügeln.</p>



<h2 id="h-was-sagen-fachleute" class="wp-block-heading">Was sagen Fachleute?</h2>



<p class="wp-block-paragraph">Die Einschätzung von Expertinnen, Experten und Prüforganisationen zum Thema »Accessibility Overlay« ist eindeutig:</p>



<h3 id="h-bik-bitv-test-kein-prufsiegel-fur-overlay-seiten" class="wp-block-heading">BIK BITV-Test: Kein Prüfsiegel für Overlay-Seiten</h3>



<p class="wp-block-paragraph">Der BIK BITV-Test – die zentrale deutsche Prüfinstanz für Web-Barrierefreiheit – hat seine <a href="https://bitvtest.de/test-methodik/web/beschreibung-des-pruefverfahrens#c761" target="_blank" rel="noreferrer noopener">Testmethodik</a> angepasst: Websites mit Overlay-Tools erhalten <strong>kein BIK-Prüfsiegel</strong>. In einem <a href="https://bitvtest.de/blog/detail/overlays-fuer-mehr-barrierefreiheit-warum-das-keine-gute-idee-ist" target="_blank" rel="noreferrer noopener">ausführliche Blogbeitrag</a> stellt BIK fest: </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">In keinem Fall war ein Overlay in der Lage, eine nicht barrierefreie Seite quasi automatisch WCAG- bzw. BITV-konform zu machen.</p>
</blockquote>



<h3 id="h-bfit-bund-keine-rechtskonformitat" class="wp-block-heading">BFIT-Bund: Keine Rechtskonformität</h3>



<p class="wp-block-paragraph">Auch die <a href="https://www.bfit-bund.de/DE/Publikation/einschaetzung-overlaytools.html" target="_blank" rel="noreferrer noopener">Überwachungsstelle des Bundes für Barrierefreiheit von Informationstechnik</a> ist unmissverständlich: Overlay-Tools machen eine nicht barrierefreie Website nicht automatisch gesetzeskonform. Der Ausschuss für barrierefreie Informationstechnik stellt fest, dass nur ein kleiner Teil der über 100 Barrierefreiheits-Anforderungen automatisiert prüfbar ist – und noch weniger automatisiert behebbar.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Der Ausschuss weist darauf hin, dass Webauftritte öffentlicher Stellen nur barrierefrei sind, wenn sie die sich aus der Richtlinie (EU) 2016/2102 ergebenden Anforderungen zur Barrierefreiheit auch ohne die Verwendung von Overlay-Tools erfüllen.</p>
</blockquote>



<h3 id="h-eu-kommission-overlays-sind-keine-angemessene-losung" class="wp-block-heading">EU-Kommission: Overlays sind keine angemessene Lösung</h3>



<p class="wp-block-paragraph">Die Europäische Kommission hat auf ihrer <a href="https://digital-strategy.ec.europa.eu/en/policies/web-accessibility" target="_blank" rel="noreferrer noopener">offiziellen Seite zur Web-Barrierefreiheit</a> einen eigenen Abschnitt zu Overlay Tools veröffentlicht und schreibt: </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Overlays, or any other tools which do not ensure the website itself meets the detailed criteria of the standard, are not an appropriate solution. […] It is best to fix accessibility issues at their source.</p>
</blockquote>



<p class="wp-block-paragraph">Das Europäische Behinderungsforum sowie Menschen mit Behinderungen und Accessibility-Fachleute haben demnach ausdrücklich Bedenken gegenüber dem Einsatz von Overlays geäußert.</p>



<h3 id="h-die-internationale-fachgemeinschaft" class="wp-block-heading">Die internationale Fachgemeinschaft</h3>



<p class="wp-block-paragraph">Eine WebAIM-Umfrage ergab, dass <a href="https://webaim.org/projects/practitionersurvey3/#overlay" target="_blank" rel="noreferrer noopener">67 % der Accessibility-Fachleute</a> Overlays als »gar nicht« oder »kaum« effektiv beurteilen. Unter Menschen mit Behinderungen steigt dieser Wert auf 72 %.</p>



<p class="wp-block-paragraph">Das <a href="https://overlayfactsheet.com/de/" target="_blank" rel="noreferrer noopener">Overlay Fact Sheet</a> – unterzeichnet von über 1000 Accessibility-Profis weltweit – bringt es auf den Punkt:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><em>Es ist ein Irrtum zu glauben, dass die vom Overlay-Widget bereitgestellten Funktionen einen nennenswerten Zusatznutzen liefern, denn wenn diese Funktionen notwendig für die Nutzung der Website wären, würden sie für alle Websites benötigt, mit denen der Nutzer interagiert. Stattdessen ist das Widget – bestenfalls – eine redundante Funktionalität zu dem, was der Benutzer bereits hat.</em></p>
</blockquote>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/accessibility-overlays-overlay-tools-unsere-haltung-dazu-bei-kulturbanause/">Accessibility Overlays &amp; Overlay Tools – unsere Haltung dazu bei kulturbanause</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/accessibility-overlays-overlay-tools-unsere-haltung-dazu-bei-kulturbanause/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress: PHP-only Blöcke mit autoRegister</title>
		<link>https://kulturbanause.de/blog/wordpress-php-only-bloecke-mit-autoregister/</link>
					<comments>https://kulturbanause.de/blog/wordpress-php-only-bloecke-mit-autoregister/#respond</comments>
		
		<dc:creator><![CDATA[Robert Menzel]]></dc:creator>
		<pubDate>Mon, 08 Jun 2026 13:13:12 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41523</guid>

					<description><![CDATA[<p>Seit WordPress 7.0 können individuelle Blöcke auf PHP-Basis und ohne JavaScript erstellt werden. Die Option »autoRegister« registriert Input-Felder und Einstellungen automatisch und macht einen aufwändigen Build-Prozess in vielen Fällen überflüssig. </p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/wordpress-php-only-bloecke-mit-autoregister/">WordPress: PHP-only Blöcke mit autoRegister</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                WordPress: PHP-only Blöcke mit autoRegister					
            </span>
        </h1>
        
        

	</div>

</header>





<p class="wp-block-paragraph">Ab WordPress 7.0 lassen sich <a href="https://make.wordpress.org/core/2026/03/03/php-only-block-registration/" target="_blank" rel="noreferrer noopener">eigene Blöcke vollständig in PHP</a> entwickeln. Bisher war dafür zwingend JavaScript notwendig. Mit der neuen Option <code>autoRegister</code> entfällt das. WordPress übernimmt die Editor-Integration automatisch.</p>



<div class="cta-container"><aside class="cta"><div class="cta__banner"><img decoding="async" fetchpriority="low" src="https://kulturbanause.de/wp-content/themes/kulturbanause/assets/img/reader-rwd-cover.webp" alt="Cover der Readers" width="150" class="product-cover"><div><h2 class="cta__title" data-toc-heading-ignore>Reader: Responsive Design (eBook + PDF)</h2><p>Unsere besten Inhalte für alle, die sich aus konzeptioneller und gestalterischer Sicht mit responsiven Websites beschäftigen.</p><a href="https://shop.kulturbanause.de/produkt/reader-responsive-design-konzept-design-projektleitung/" class="btn btn-primary" target="_blank" rel="noopener">Im Shop anzeigen&nbsp;&rarr;</a></div></div></aside></div>



<p class="wp-block-paragraph"><div class="toc is-sticky" data-toc-container></div></p>



<h2 class="wp-block-heading" id="h-was-ist-autoregister"><strong>Was ist »autoRegister«?</strong></h2>



<p class="wp-block-paragraph"><code>autoRegister</code> ist eine neue Option im <code>supports</code>-Array, die mit WordPress 7.0 eingeführt wurde. Das <code>supports</code>-Array ist Bestandteil von <code>register_block_type()</code> und legt fest, welche Editor-Funktionen ein Block unterstützt, wie z.B. Farb- oder Abstandsoptionen. Ist <code>autoRegister</code> aktiv, registriert WordPress den Block selbstständig im Editor.</p>



<h2 class="wp-block-heading" id="h-block-erstellen-schritt-fur-schritt">Block erstellen: Schritt für Schritt</h2>



<p class="wp-block-paragraph">Ein PHP-only Block kann folgendermaßen aufgebaut werden:</p>



<ol class="wp-block-list">
<li>Block-CSS mit <code>wp_register_style()</code> registrieren</li>



<li>Block via <code>register_block_type()</code> registrieren und Titel, Beschreibung, Kategorie, Attribute und Supports direkt als PHP-Array übergeben</li>



<li>Im <code>supports</code>-Array <code>autoRegister</code> auf <code>true</code> setzen</li>



<li>Einen <code>render_callback</code> schreiben (eine PHP-Funktion, die das HTML des Blocks für das Frontend erzeugt)</li>



<li><code>get_block_wrapper_attributes()</code> verwenden (eine WordPress-Funktion, die alle notwendigen HTML-Attribute wie Klassen und Inline-Styles aus den Block Supports automatisch generiert)</li>
</ol>



<p class="wp-block-paragraph">In folgendem Beispiel erzeugen wir einen einfachen PHP-Block als Plugin. Der Block heißt »Info-Block« und gibt einen kurzen Text im Frontend aus. Über die Sidebar des Block-Editors lässt sich der Text bearbeiten sowie Schrift- und Hintergrundfarbe anpassen – alles ohne eine einzige Zeile JavaScript.</p>



<pre class="wp-block-code language-php"><code>&lt;?php
/*
Plugin Name: Info-Block (PHP-Only Block)
Description: Integration des PHP-Only Info-Blocks ab WordPress 7.0
*/

function kb_info_block_register_block() {

    // Schritt 1: CSS registrieren
    wp_register_style(
        'kb-info-block-style',
        plugin_dir_url( __FILE__ ) . 'style.css'
    );

    // Schritte 2 &amp; 3: Block registrieren und autoRegister aktivieren
    register_block_type( 'pluginname/info-block', &#091;
        'title'    =&gt; 'Info-Block',
        'category' =&gt; 'text',
        'style'    =&gt; 'kb-info-block-style',
        'attributes' =&gt; &#091;
            'text' =&gt; &#091;
                'type'    =&gt; 'string',
                'label'   =&gt; 'Text',
                'default' =&gt; '',
            ],
        ],
        'supports' =&gt; &#091;
            'autoRegister' =&gt; true,
            'color' =&gt; &#091;
                'text'       =&gt; true,
                'background' =&gt; true,
            ],
        ],
        'render_callback' =&gt; 'kb_info_block_render_block',
    ] );
}
add_action( 'init', 'kb_info_block_register_block' );

// Schritte 4 &amp; 5: render_callback mit get_block_wrapper_attributes()
function kb_info_block_render_block( $attributes ) {
    $wrapper = get_block_wrapper_attributes();
    $text    = esc_html( $attributes&#091;'text'] ?? '' );

    return "&lt;div {$wrapper}&gt;{$text}&lt;/div&gt;";
}</code></pre>



<p class="wp-block-paragraph">Das Plugin besteht aus zwei Dateien: der PHP-Hauptdatei (z.&nbsp;B. <code>info-block.php</code>) mit der Block-Registrierung und einer <code>style.css</code> im selben Ordner für das Styling. Der Plugin-Ordner wird wie üblich unter <code>wp-content/plugins/</code> abgelegt.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1374" height="772" src="https://media.kulturbanause.de/2026/05/php-only-block-wordpress.png" alt="" class="wp-image-41529" srcset="https://media.kulturbanause.de/2026/05/php-only-block-wordpress.png 1374w, https://media.kulturbanause.de/2026/05/php-only-block-wordpress-300x169.png 300w, https://media.kulturbanause.de/2026/05/php-only-block-wordpress-1024x575.png 1024w, https://media.kulturbanause.de/2026/05/php-only-block-wordpress-240x135.png 240w, https://media.kulturbanause.de/2026/05/php-only-block-wordpress-320x180.png 320w, https://media.kulturbanause.de/2026/05/php-only-block-wordpress-481x270.png 481w, https://media.kulturbanause.de/2026/05/php-only-block-wordpress-500x281.png 500w" sizes="auto, (max-width: 1374px) 100vw, 1374px" /><figcaption class="wp-element-caption">Auswahl des Blocks im Block-Editor von WordPress</figcaption></figure>



<h2 class="wp-block-heading" id="h-einstellungen-block-controls-fur-php-blocke-festlegen">Einstellungen (Block Controls) für PHP-Blöcke festlegen</h2>



<p class="wp-block-paragraph">WordPress generiert automatisch die passenden Eingabefelder und Styling-Optionen in der rechten Seitenleiste, sobald bestimmte Attribute korrekt definiert sind. Eigene, JavaScript-basierte, Eingabefelder (Inspector Controls) lassen sich mit PHP-only Blöcken nicht umsetzen. Für viele Anwendungsfälle wird das auch nicht benötigt. </p>



<h3 class="wp-block-heading" id="h-input-typen-uber-attribute-steuern">Input-Typen über Attribute steuern</h3>



<p class="wp-block-paragraph">Erhält ein Attribut einen <code>label</code>-Key, erzeugt WordPress daraus selbstständig ein passendes Eingabefeld in der Sidebar. Der Typ des Attributs bestimmt dabei, welches Control erscheint:</p>



<ul class="wp-block-list">
<li><code>string</code> → Texteingabe (TextControl)</li>



<li><code>integer</code> oder <code>number</code> → Zahleneingabe (NumberControl)</li>



<li><code>boolean</code> → Umschalter (ToggleControl)</li>



<li><code>string</code> kombiniert mit <code>enum</code> → Auswahlmenü (SelectControl)</li>
</ul>



<h3 class="wp-block-heading" id="h-styling-optionen-mittels-block-supports-steuern">Styling-Optionen mittels Block Supports steuern</h3>



<p class="wp-block-paragraph">Block Supports sind vordefinierte WordPress-Funktionen wie Farb-, Abstands- oder Typografie-Optionen. Sie lassen sich direkt im <code>supports</code>-Array aktivieren, wodurch WordPress die entsprechenden Sidebar-Panels automatisch rendert.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2010" height="1004" src="https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress.png" alt="" class="wp-image-41530" srcset="https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress.png 2010w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-300x150.png 300w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-1024x511.png 1024w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-1536x767.png 1536w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-240x120.png 240w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-360x180.png 360w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-541x270.png 541w, https://media.kulturbanause.de/2026/05/php-only-block-inspector-controls-wordpress-500x250.png 500w" sizes="auto, (max-width: 2010px) 100vw, 2010px" /><figcaption class="wp-element-caption">Darstellung der Block Controls in der Sidebar</figcaption></figure>



<h2 class="wp-block-heading" id="h-wann-sind-php-only-blocke-sinnvoll">Wann sind PHP-only Blöcke sinnvoll?</h2>



<p class="wp-block-paragraph">PHP-only Blöcke eignen sich besonders für einfache Ausgabe-Blöcke ohne komplexe Interaktion im WordPress-Editor. Sobald ein Block aufwändige Editor-Interaktion benötigt, z.B. verschachtelte Blöcke Media-Uploads oder eine eigene Live-Vorschau, kommt man um JavaScript nicht herum. Für alle anderen Fälle ist der PHP-Block oft die schlankere und wartungsärmere Lösung.</p>



<h2 class="wp-block-heading" id="h-php-blocke-mit-claude-code-entwickeln">PHP-Blöcke mit Claude Code entwickeln</h2>



<p class="wp-block-paragraph">Claude Code lässt sich durch <a href="https://kulturbanause.de/faq/agent-skills/" type="faq" id="41136">Skills</a> erweitern. Der folgende <a href="https://github.com/bacoords/example-php-block" target="_blank" rel="noreferrer noopener">Skill php-block</a> (nicht offiziell von WordPress) versorgt Claude mit den Konventionen des Projekts, sodass generierter Code den Standards entspricht. Eine Einführung in das Thema bietet dieses <a href="https://www.youtube.com/watch?v=HS0pUU-cSpM" target="_blank" rel="noreferrer noopener">Video-Tutorial</a>.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/wordpress-php-only-bloecke-mit-autoregister/">WordPress: PHP-only Blöcke mit autoRegister</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/wordpress-php-only-bloecke-mit-autoregister/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Figma »Code to Canvas« und bidirektionale Workflows mit Claude</title>
		<link>https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/</link>
					<comments>https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 17:55:30 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[Figma]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41143</guid>

					<description><![CDATA[<p>Figmas MCP-Feature »Code to Canvas«-ermöglich den Import fertig gecodeter Benutzeroberflächen aus dem Browser auf die Figma-Arbeitsfläche. Dank sog. bidirektionaler Workflows können anschließend Änderungen, die im Design vorgenommen wurden zurück in den Code übertragen werden.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/">Figma »Code to Canvas« und bidirektionale Workflows mit Claude</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma »Code to Canvas« und bidirektionale Workflows mit Claude					
            </span>
        </h1>
        
        

	</div>

</header>





<p class="wp-block-paragraph"><div class="toc is-sticky" data-toc-container></div></p>



<h2 class="wp-block-heading" id="h-video">Video</h2>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">

</div></figure>



<div class="cta-container"><aside class="cta"><div class="cta__banner"><img decoding="async" fetchpriority="low" src="https://kulturbanause.de/wp-content/themes/kulturbanause/assets/img/cover-figma-design-development-workflow-small.webp" alt="Cover des Video-Trainings mit Figma Logo und Dev Mode Icon" width="150" class="product-cover"><div><h2 class="cta__title" data-toc-heading-ignore>Video-Training: Figma – Design/Development-Workflow</h2><p>Von Design zu Dev und KI. Ein umfassender Einblick in Figmas Dev Mode und den Hand-Off-Prozess. Für alle Designer, Developer & Team-Leads, die ihre Zusammenarbeit verbessern möchten.</p><a href="https://shop.kulturbanause.de/produkt/video-training-figma-dev-mode-hand-off/" class="btn btn-primary" target="_blank" rel="noopener">Im Shop anzeigen&nbsp;&rarr;</a></div></div></aside></div>



<h2 class="wp-block-heading">Vom Wasserfall zum iterativen Prozess</h2>



<p class="wp-block-paragraph">Jahrelang war der typische Weg zwischen Design und Code eine Einbahnstraße: Im Design-Tool entstand ein Entwurf, Entwicklerinnen und Entwickler übertrugen ihn in Code. MCP-Integrationen haben diesen Transfer zuletzt automatisiert – aber die Richtung blieb meist dieselbe – wenn es auch bereits <a href="https://kulturbanause.de/blog/der-design-development-workflow-und-die-single-source-of-truth/" type="post" id="23701">seit Jahren Gegentrends</a> gab. Mit »Code to Canvas« dreht Figma diesen Prozess nun konsequent um. Eine fertig umgesetzte Benutzeroberfläche im Browser, bestehend aus HTML, CSS und JavaScript, wird dabei automatisch auf die Figma-Arbeitsoberfläche übertragen. </p>



<h2 class="wp-block-heading" id="h-ein-figma-plugin-fur-claude-code">Ein Figma-Plugin für Claude Code</h2>



<p class="wp-block-paragraph">Im Zuge einer <a href="https://www.figma.com/blog/the-future-of-design-is-code-and-canvas/" target="_blank" rel="noreferrer noopener">Kooperation zwischen Figma und Anthropic</a>, dem Hersteller von Claude, ist ein <a href="https://developers.figma.com/docs/figma-mcp-server/remote-server-installation/" target="_blank" rel="noreferrer noopener">offizielles Plugin</a> entstanden, das die Integration deutlich vereinfacht. Statt den Figma-MCP-Server manuell einzurichten und <a href="https://kulturbanause.de/faq/agent-skills/" type="faq" id="41136">Skills</a> separat herunterzuladen, liefert das Plugin beides als Bundle. Die Installation erfolgt über das Terminal im jeweiligen Projektordner mit einem einzigen Befehl.</p>



<p class="wp-block-paragraph">Nach der Installation und einem Neustart von Claude Code erscheint das Figma-Plugin als »Built-in MCP«. Wer bereits die klassischen Figma-MCP-Integration eingerichtet hat, kann diese weiternutzen.</p>



<h2 class="wp-block-heading" id="h-vom-browser-in-die-figma-datei">Vom Browser in die Figma-Datei</h2>



<p class="wp-block-paragraph">Der Transfer vom Browser in den Code läuft über einen Prompt in Claude Code. Dieser enthält zwei Informationen: die localhost-URL der laufenden Web-App und den Link zur Zieldatei in Figma. Ein einfacher Satz wie »Implementiere dieses Design (localhost-URL) in diese Figma-Datei (Figma-URL)« genügt.</p>



<p class="wp-block-paragraph">Claude Code greift automatisch auf den passenden Figma-Skill zurück und analysiert die Figma-Datei und die HTML-Quelle. Für den Prozess wird ein kleines JavaScript-Snippet temporär in die HTML-Datei eingefügt. Dieses Script ermöglicht Figma, einen visuellen Snapshot der Seite zu erstellen, und aktiviert zusätzlich eine interaktive Toolbar im Browser, mit der ihr auch einzelne Elemente zur selektiven Übertragung auswählen könnt.</p>



<p class="wp-block-paragraph">Das Ergebnis in Figma ist überzeugend: Die Elemente erscheinen mit korrekten Abmessungen und Auto-Layout-Interpretation so, wie sie im Code definiert wurden.</p>



<h2 class="wp-block-heading">Bidirektional: Änderungen aus Figma zurück in den Code</h2>



<p class="wp-block-paragraph">Der wirklich interessante Teil des Features liegt im bidirektionalen Workflow. Figma verfolgt das Ziel, die strikte Trennlinie zwischen Design und Entwicklung aufzuweichen. Änderungen sollen nicht nur von Design zu Code fließen, sondern auch in die umgekehrte Richtung.</p>



<p class="wp-block-paragraph">In der Praxis funktioniert das so: Ein Element in Figma wird bearbeitet, anschließend genügt ein kurzer Prompt wie »Ziehe die Designänderungen im Code nach«, damit der Agent die Figma-Datei ausliest, die Änderung identifiziert und den Code aktualisiert. Das Resultat ist unmittelbar im Browser sichtbar.</p>



<h2 class="wp-block-heading" id="h-der-grundstein-ist-gelegt">Der Grundstein ist gelegt</h2>



<p class="wp-block-paragraph"><a href="https://developers.figma.com/docs/figma-mcp-server/code-to-canvas/" target="_blank" rel="noreferrer noopener">Code to Canvas</a> ist ein wichtiger und überzeugender erster Schritt. Was in vielen Fällen Drittanbieter-Plugins wie <a href="https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/" type="post" id="41082">HTML to Design</a> ermöglichten, ist jetzt zumindest in Anfängen nativ in Figma verfügbar und tief mit KI-gestützten Coding-Tools wie Claude Code verzahnt.</p>



<p class="wp-block-paragraph">Der bidirektionale Ansatz beschreibt allerdings letztlich einen Workflow, den Designer mit Coding-Kenntnissen schon immer intuitiv genutzt haben. Das dauerhafte Wechseln zwischen Design-Tool und Code-Editor um Änderungen in beide Richtungen zu übertragen. Neu ist, dass diese Übergänge jetzt durch KI und MCP-Integrationen automatisiert werden und somit auch für Teams ohne tiefes Coding-Wissen zugänglich werden.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/">Figma »Code to Canvas« und bidirektionale Workflows mit Claude</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-code-to-canvas-und-bidirektionale-workflows-mit-claude/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Figma Dev Mode: Layout Informationen auslesen – von Auto Layout zu Flexbox und Grid</title>
		<link>https://kulturbanause.de/blog/figma-dev-mode-layout-informationen-auslesen-von-auto-layout-zu-flexbox-und-grid/</link>
					<comments>https://kulturbanause.de/blog/figma-dev-mode-layout-informationen-auslesen-von-auto-layout-zu-flexbox-und-grid/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Fri, 27 Mar 2026 12:38:48 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Figma]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41119</guid>

					<description><![CDATA[<p>Der Figma Dev Mode kann Layout-Informationen detailliert ausgeben – vorausgesetzt, das Design wurde entsprechend aufgebaut. Wer einige Grundlagen im Design beachtet, bekommt im Dev Mode keine Pixelwerte, sondern saubere CSS-Eigenschaften, Token-Namen und variable Einheiten, die sich direkt in Code übertragen lassen. </p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-dev-mode-layout-informationen-auslesen-von-auto-layout-zu-flexbox-und-grid/">Figma Dev Mode: Layout Informationen auslesen – von Auto Layout zu Flexbox und Grid</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma Dev Mode: Layout Informationen auslesen – von Auto Layout zu Flexbox und Grid					
            </span>
        </h1>
        
        

	</div>

</header>





<p class="wp-block-paragraph"><div class="toc is-sticky" data-toc-container></div></p>



<h2 class="wp-block-heading" id="h-video">Video</h2>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">

</div></figure>



<p class="wp-block-paragraph"><a href="https://youtu.be/W5vnvc-0enY" target="_blank" rel="noreferrer noopener">Video anschauen</a></p>



<div class="cta-container"><aside class="cta"><div class="cta__banner"><img decoding="async" fetchpriority="low" src="https://kulturbanause.de/wp-content/themes/kulturbanause/assets/img/cover-figma-design-development-workflow-small.webp" alt="Cover des Video-Trainings mit Figma Logo und Dev Mode Icon" width="150" class="product-cover"><div><h2 class="cta__title" data-toc-heading-ignore>Video-Training: Figma – Design/Development-Workflow</h2><p>Von Design zu Dev und KI. Ein umfassender Einblick in Figmas Dev Mode und den Hand-Off-Prozess. Für alle Designer, Developer & Team-Leads, die ihre Zusammenarbeit verbessern möchten.</p><a href="https://shop.kulturbanause.de/produkt/video-training-figma-dev-mode-hand-off/" class="btn btn-primary" target="_blank" rel="noopener">Im Shop anzeigen&nbsp;&rarr;</a></div></div></aside></div>



<h2 class="wp-block-heading" id="h-was-der-dev-mode-an-layout-informationen-ausgibt">Was der Dev Mode an Layout-Informationen ausgibt</h2>



<p class="wp-block-paragraph">Wer im Dev Mode ein Element anklickt, das sauber mit Auto Layout aufgebaut wurde, erhält auf einen Blick alle relevanten CSS-Eigenschaften: Padding-Werte, Gap zwischen den Kind-Elementen sowie das grundlegende Layout-Verhalten – also ob es sich um eine Flexbox oder ein Grid handelt.</p>



<p class="wp-block-paragraph">Ein Beispiel: Ein Header-Element mit Logo links und Button rechts zeigt im Dev Mode <code>justify-content: space-between</code> und <code>align-items: center</code> – genau das, was der Abstand »Auto« im Design-Mode bedeutet. Padding-Werte erscheinen farblich hervorgehoben (blau für Padding, rot schraffiert für Gap), was die Übersicht weiter erleichtert.</p>



<p class="wp-block-paragraph">Diese Ausgabe funktioniert aber nur, wenn das Element im Design-Mode tatsächlich mit Auto Layout gebaut wurde. Ohne diese Vorbereitung liefert Dev Mode keine Layout-Eigenschaften – nur feste Breiten- und Höhenangaben.</p>



<h2 class="wp-block-heading" id="h-auto-layout-die-abstraktion-von-flexbox-und-grid">Auto Layout: Die Abstraktion von Flexbox und Grid</h2>



<p class="wp-block-paragraph">Auto Layout ist Figmas abstrahierte Umsetzung von CSS-Layoutmechanismen wie Flexbox und Grid. Es erlaubt Designerinnen und Designern, Elemente so zu strukturieren, dass sie ähnlich wie im Browser reagieren – responsiv, abstandsbasiert, hierarchisch verschachtelt.</p>



<p class="wp-block-paragraph">Der Unterschied zu einem klassischen Design-Tool wie Illustrator: Dort werden Elemente einfach positioniert – ein Rechteck hier, ein Text daneben. In Figma mit Auto Layout dagegen definiert man Innenabstände (Padding) und Abstände zwischen Elementen (Gap) explizit, und die Breite eines Elements ergibt sich automatisch aus Inhalt plus Padding. Das entspricht dem <a href="https://kulturbanause.de/faq/intrinsic-web-design/" type="faq" id="19610">intrinsischen Verhalten</a> im Web.</p>



<p class="wp-block-paragraph">Sobald mehrere Elemente gemeinsam reagieren sollen – etwa zwei Buttons nebeneinander – werden sie in ein Eltern-Element verpackt, das ebenfalls Auto Layout erhält. So entsteht eine verschachtelte Hierarchie, die der DOM-Struktur im Browser sehr ähnelt.</p>



<h2 class="wp-block-heading" id="h-ohne-auto-layout-fehlt-etwas">Ohne Auto Layout fehlt etwas</h2>



<p class="wp-block-paragraph">Wird ein Element ohne Auto Layout gebaut – also nur als gezeichnetes Rechteck mit Text darüber –, sieht man im Dev Mode kein Padding, keinen Gap, keine Flexbox-Eigenschaften. Entwicklerinnen und Entwickler müssen sich die Abstände dann manuell ablesen oder schätzen.</p>



<p class="wp-block-paragraph">Das ist nicht nur ineffizient, es führt auch zu Fehlern und Missverständnissen im Handoff. Eine Datei, die so aufgebaut ist, hat klaren Nachbesserungsbedarf. Die Mindestanforderung sollte sein: einheitliche Abstände, eine Spacing-Hierarchie, und konsequente Nutzung von Auto Layout für alle strukturierten Elemente.</p>



<h2 class="wp-block-heading">Layout-Variablen für konsistente Abstands-Tokens</h2>



<p class="wp-block-paragraph">Noch aussagekräftiger wird der Dev Mode, wenn Layout-Informationen nicht als fester Wert, sondern als Variablen vergeben werden. Dazu legt man in Figma eine eigene Variable-Collection für Layout an – etwa mit Zahlenwerten wie »size-1 = 8px« und »size-2 = 12px«.</p>



<p class="wp-block-paragraph">Diese Variablen werden dann bei Padding- und Gap-Werten der Elemente eingesetzt. Im Dev Mode erscheinen anschließend nicht mehr nur Pixelwerte, sondern die zugehörigen Token-Namen – also zum Beispiel »space-4« statt »24px«. Das ermöglicht es, Design-Tokens direkt im Code mit Komponentenwerten zu verknüpfen, was den Handoff erheblich beschleunigt.</p>



<p class="wp-block-paragraph">In gut organisierten Design-Systemen gibt es dafür eine eigene Spacing- oder Responsive-Collection, in der alle Abstandswerte zentral definiert und von dort aus im gesamten Design referenziert werden.</p>



<h2 class="wp-block-heading">Flexbox mit Wrap und Grid in Figma</h2>



<p class="wp-block-paragraph">Auto Layout unterstützt nicht nur einfache horizontale oder vertikale Flexbox-Layouts. Wird die Option »Wrap« aktiviert, erhält das Layout sowohl einen horizontalen als auch einen vertikalen Gap – und der Dev Mode gibt entsprechend <code>flex-wrap: wrap</code> aus.</p>



<p class="wp-block-paragraph">Für Grid-Layouts gibt es in Figma (aktuell noch in der Beta) eine eigene Grid-Option in Auto Layout. Dort lässt sich die Spalten- und Zeilenstruktur definieren, Elemente können frei im Raster positioniert werden, und einzelne Spalten können feste oder dynamische Breiten erhalten – etwa »1fr« oder »200px«.</p>



<p class="wp-block-paragraph">Im Dev Mode erscheint dann kein Flexbox-Code, sondern ein CSS Grid mit <code>grid-template-columns</code> und den entsprechenden Zeilendefinitionen.</p>



<h2 class="wp-block-heading">Min- und Max-Breiten für responsives Verhalten</h2>



<p class="wp-block-paragraph">Responsives Design bedeutet mehr als nur flexible Breiten. Oft benötigt man Mindest- und Höchstbreiten, damit ein Element nicht zu klein oder zu groß wird. In Figma lassen sich bei der Breitendefinition eines Elements zusätzlich <code>min-width</code> und <code>max-width</code> festlegen – zum Beispiel »minimal 320px« (Smartphone-Breite) und »maximal 500px«.</p>



<p class="wp-block-paragraph">Wurden diese Werte im Design-Mode hinterlegt, erscheinen sie auch im Dev Mode – umgerechnet in rem-Werte (sofern so konfiguriert) und direkt als <code>min-width</code> und <code>max-width</code> ausgewiesen. Das macht die Umsetzung im CSS deutlich eindeutiger und reduziert Rückfragen zwischen Design und Entwicklung.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-dev-mode-layout-informationen-auslesen-von-auto-layout-zu-flexbox-und-grid/">Figma Dev Mode: Layout Informationen auslesen – von Auto Layout zu Flexbox und Grid</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-dev-mode-layout-informationen-auslesen-von-auto-layout-zu-flexbox-und-grid/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Figma Code Connect UI: Komponenten mit »Production Ready« Code verknüpfen</title>
		<link>https://kulturbanause.de/blog/figma-code-connect-ui-komponenten-mit-production-ready-code-verknuepfen/</link>
					<comments>https://kulturbanause.de/blog/figma-code-connect-ui-komponenten-mit-production-ready-code-verknuepfen/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Fri, 27 Mar 2026 11:14:01 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Figma]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41088</guid>

					<description><![CDATA[<p>Mit dem Figma-Feature »Code Connect UI« lässt sich eine direkte Verbindung zwischen Figma-UI-Komponenten und dem tatsächlichen Production-Ready-Code in einem Repository herstellen. Statt der standardmäßigen Code-Interpretation von Figma seht ihr dann im Dev Mode den echten, getesteten Code ihrer Bibliothek.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-code-connect-ui-komponenten-mit-production-ready-code-verknuepfen/">Figma Code Connect UI: Komponenten mit »Production Ready« Code verknüpfen</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma Code Connect UI: Komponenten mit »Production Ready« Code verknüpfen					
            </span>
        </h1>
        
        

	</div>

</header>




<div class="toc is-sticky" data-toc-container></div>



<h2 class="wp-block-heading" id="h-video">Video</h2>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">

</div></figure>



<p class="wp-block-paragraph"><a href="https://youtu.be/5WX0x1_oIII" target="_blank" rel="noreferrer noopener">Video anschauen</a></p>



<h2 class="wp-block-heading">Das Problem: Interpretation statt Production Code</h2>



<p class="wp-block-paragraph">Wenn Entwickler im Figma Dev Mode eine Komponente inspizieren, zeigt Figma eine Code-Interpretation an – einen automatisch generierten Vorschlag, wie die Komponente umgesetzt werden könnte. Dasselbe passiert beim agentischen Coden: Die KI erfindet den Code jedes Mal neu, basierend auf der visuellen Darstellung.</p>



<p class="wp-block-paragraph">In vielen Organisationen existiert jedoch bereits eine getestete, produktionsreife Code-Bibliothek mit fertigen Komponenten. Der automatisch generierte Code von Figma ist in solchen Fällen bestenfalls ein Näherungswert – im schlimmsten Fall führt er zu Inkonsistenzen und Mehraufwand.</p>



<h2 class="wp-block-heading">Code Connect: Die Brücke zwischen Design und Code</h2>



<p class="wp-block-paragraph">Figma bietet mit »Code Connect« ein Feature, das genau dieses Problem löst. Es stellt eine direkte Verbindung zwischen UI-Komponenten in der Figma-Library und den dazugehörigen Code-Dateien in einem Repository her. Sobald diese Verbindung besteht, sehen Entwickler im Dev Mode nicht mehr Figmas Interpretation, sondern den tatsächlichen Code ihrer Organisation.</p>



<p class="wp-block-paragraph">Voraussetzung ist eine Organisation- oder Enterprise-Lizenz von Figma. Das Feature ist in den unteren Lizenzmodellen nicht verfügbar.</p>



<h2 class="wp-block-heading">Einrichtung über die Benutzeroberfläche</h2>



<p class="wp-block-paragraph">Die Verknüpfung erfolgt im Dev Mode über den Menüpunkt »Library → Connect Components to Code«. Figma zeigt eine Liste aller Komponenten der aktuellen Bibliothek an. Für jede Komponente kann eine URL zur entsprechenden Code-Datei in einem Repository hinterlegt werden.</p>



<p class="wp-block-paragraph">Besonders komfortabel wird es mit einer GitHub-Verbindung: Figma erkennt dann die Repository-Struktur und ermöglicht eine direktere Auswahl der passenden Dateien. Grundsätzlich funktioniert das Feature aber auch mit beliebigen URLs, die nicht auf GitHub liegen.</p>



<p class="wp-block-paragraph">Sobald die Verbindung hergestellt ist, wird die Komponente in der Übersicht als „connected“ markiert und im Dev Mode erscheint der Verweis auf die verknüpfte Code-Datei.</p>



<h2 class="wp-block-heading">KI-Instruktionen für gezielte Steuerung</h2>



<p class="wp-block-paragraph">Ein besonders nützliches Feature ist die Möglichkeit, pro Verbindung zusätzliche Anweisungen für KI-Tools zu hinterlegen. Diese »Instructions« werden gelesen, wenn eine KI die Komponente umsetzen soll. So lässt sich sicherstellen, dass KI-gestützte Workflows nicht blind arbeiten, sondern kontextbewusst agieren.</p>



<h2 class="wp-block-heading">Integration mit KI-Coding-Tools</h2>



<p class="wp-block-paragraph">Über das Model Context Protocol (MCP) können KI-Tools wie Claude Code auf den Figma-Kontext zugreifen. In der Praxis bedeutet das: Man kopiert den Link zu einer Figma-Komponente, gibt Claude Code &amp; Co. den Auftrag, diese Komponente zu bauen, und das Tool liest automatisch den hinterlegten Code sowie die Instructions aus.</p>



<p class="wp-block-paragraph">Die KI greift dann nicht auf eine neue Interpretation zurück, sondern nutzt den tatsächlichen Production-Ready-Code als Basis – ergänzt um die spezifischen Anweisungen, die für diese Komponente hinterlegt wurden.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-code-connect-ui-komponenten-mit-production-ready-code-verknuepfen/">Figma Code Connect UI: Komponenten mit »Production Ready« Code verknüpfen</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-code-connect-ui-komponenten-mit-production-ready-code-verknuepfen/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Figma HTML to Design: Wenn der Code zur Single Source of Truth wird</title>
		<link>https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/</link>
					<comments>https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Thu, 26 Mar 2026 18:26:12 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Figma]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41082</guid>

					<description><![CDATA[<p>Mit dem Figma-Plugin »HTML to Design« können bestehende Code-Komponenten und Website-Elemente direkt in Figma importieren werden. Der Code wird somit zur Single Source of Truth. </p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/">Figma HTML to Design: Wenn der Code zur Single Source of Truth wird</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma HTML to Design: Wenn der Code zur Single Source of Truth wird					
            </span>
        </h1>
        
        

	</div>

</header>




<div class="toc is-sticky" data-toc-container></div>



<h2 class="wp-block-heading" id="h-video">Video</h2>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">

</div></figure>



<p class="wp-block-paragraph"><a href="https://youtu.be/HyPt-SW2Yg0" target="_blank" rel="noreferrer noopener">Link zum Video</a></p>



<h2 class="wp-block-heading" id="h-was-ist-das-original">Was ist das Original? </h2>



<p class="wp-block-paragraph">Im klassischen Workflow zwischen Design und Entwicklung steht das Design am Anfang. UX/UI-Teams gestalten Oberflächen und Komponenten in Tools wie Figma, und anschließend wird das Ergebnis in Code übertragen – ob manuell durch Entwickler oder automatisiert durch KI. Änderungen werden zuerst im Design umgesetzt und danach im Code nachgezogen.</p>



<p class="wp-block-paragraph">Dieses Vorgehen hat einen grundlegenden Nachteil: Was in Figma als einzelne Komponente existiert – etwa ein Button – wird in der Praxis in verschiedenen Umgebungen gerendert. Unterschiedliche Browser, verschiedene Zieltechnologien wie HTML und React, und diverse Rendering-Engines führen dazu, dass aus einem einzigen Design-Original eine multidimensionale Code-Darstellung entsteht. Die Single Source of Truth im Design wird durch die Vielfalt der Implementierungen aufgeweicht.</p>



<h2 class="wp-block-heading" id="h-code-als-single-source-of-truth">Code als Single Source of Truth</h2>



<p class="wp-block-paragraph">Die Alternative besteht darin, den Workflow umzudrehen. Statt im Design zu starten und den Code abzuleiten, wird der Code selbst zum Original. Änderungen finden direkt in der Code-Basis statt, und das Design-Tool – in diesem Fall Figma – dient als Darstellungsoberfläche, um mit den UI-Komponenten im Kontext von Prototypen und Iterationen arbeiten zu können.</p>



<p class="wp-block-paragraph">Dieser Ansatz ist besonders dann sinnvoll, wenn bereits ein ausgereiftes Design-System als Code-Bibliothek vorliegt, beispielsweise in einem Storybook oder einer browserbasierten Komponentendokumentation. Statt die Bibliothek in Figma von Grund auf aufzubauen und anschließend an den Code zu übertragen, kommt man von der Code-Seite und importiert die Komponenten zurück in die visuelle Umgebung.</p>



<h2 class="wp-block-heading">HTML to Design: Das Figma-Plugin für den Import</h2>



<p class="wp-block-paragraph">Das Figma-Plugin <a href="https://html.to.design/home/" target="_blank" rel="noreferrer noopener">HTML to Design</a> ermöglicht genau diesen Weg. Es ist im Design-Modus verfügbar (nicht im Dev Mode) und bietet in der kostenlosen Version etwa 10 Importe pro Monat. Es gibt zwei Hauptwege für den Import: Die direkte Eingabe einer URL, um eine komplette Seite zu importieren, oder die Nutzung einer Chrome-Extension, mit der gezielt einzelne Bereiche einer Live-Website ausgewählt und an Figma gesendet werden können.</p>



<p class="wp-block-paragraph">Die Chrome-Extension funktioniert ähnlich wie die Browser-DevTools: Man wählt auf der gewünschten Website den gewünschten Bereich aus – etwa eine Navigationsleiste – und sendet ihn direkt an das Plugin in Figma. Dort stehen verschiedene Import-Optionen zur Verfügung, etwa ob Auto Layout verwendet werden soll oder wie mit Schriften umgegangen wird.</p>



<h2 class="wp-block-heading">Was das Plugin erkennt und umsetzt</h2>



<p class="wp-block-paragraph">Beim Import interpretiert das Plugin die Code-Struktur intelligent. Flexbox-Layouts werden automatisch als Auto Layouts erkannt, Container-Strukturen und Verschachtelungen werden beibehalten. Das Ergebnis ist ein Figma-Frame, der die tatsächliche Code-Architektur widerspiegelt – mit korrekten Hierarchien, Abständen und Layout-Eigenschaften.</p>



<p class="wp-block-paragraph">Falls verwendete Schriftarten lokal nicht verfügbar sind, bietet das Plugin einen automatischen Ersatz an, etwa durch Helvetica. So entsteht ein arbeitsfähiges Figma-Element, das als Ausgangspunkt für weitere Design-Arbeit, Prototypen oder Iterationen dienen kann.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/">Figma HTML to Design: Wenn der Code zur Single Source of Truth wird</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-html-to-design-wenn-der-code-zur-single-source-of-truth-wird/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Figma Dev Mode: Grafiken und SVGs exportieren</title>
		<link>https://kulturbanause.de/blog/figma-dev-mode-grafiken-und-svgs-exportieren/</link>
					<comments>https://kulturbanause.de/blog/figma-dev-mode-grafiken-und-svgs-exportieren/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Thu, 26 Mar 2026 18:19:10 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Figma]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41074</guid>

					<description><![CDATA[<p>Figma bietet im Dev Mode verschiedene Export-Optionen, die je nach Anwendungsfall unterschiedlich effizient sind. Wir zeigen die unterschiedlichen Möglichkeiten vom Export von Pixelgrafiken bis zum gezielten SVG-Export. </p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-dev-mode-grafiken-und-svgs-exportieren/">Figma Dev Mode: Grafiken und SVGs exportieren</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma Dev Mode: Grafiken und SVGs exportieren					
            </span>
        </h1>
        
        

	</div>

</header>




<div class="toc is-sticky" data-toc-container></div>



<h2 class="wp-block-heading" id="h-video">Video</h2>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">

</div></figure>



<p class="wp-block-paragraph"><a href="https://youtu.be/g-mWtK2V9hk" target="_blank" rel="noreferrer noopener">Link zum Video</a></p>



<h2 class="wp-block-heading">Pixelgrafiken (PNG, JPG) aus Figma exportieren</h2>



<p class="wp-block-paragraph">Beim Umsetzen von Designs müssen regelmäßig Grafiken exportiert werden – von Hintergrundbildern über Logos bis hin zu Icons. Figma bietet dafür im Dev Mode mehrere Wege an, die je nach Anwendungsfall unterschiedlich effizient sind.</p>



<p class="wp-block-paragraph">Für den Export als Pixelgrafik (PNG, JPG) muss das zu exportierende Element in einem Frame liegen. Frames sind in der Ebenenpalette am Rauten-Symbol erkennbar. Nach Auswahl des Frames erscheint rechts unten die Export-Funktion mit Einstellungen für Format, Auflösung (1x, 2x, 3x) und Farbprofil (sRGB, Display P3). Eine Vorschau zeigt das Ergebnis vor dem Download. Moderne Bildformate wie WebP oder AVIF werden aktuell noch nicht nativ unterstützt, können aber über Plugins ergänzt werden.</p>



<h2 class="wp-block-heading">SVG exportieren</h2>



<p class="wp-block-paragraph">In der Praxis dominiert der SVG-Export, insbesondere für Icons, Logos und grafische Formen. Figma erkennt innerhalb einer Auswahl automatisch enthaltene Assets – ein Icon innerhalb eines Buttons wird als eigenständiges Element identifiziert und kann separat heruntergeladen werden. Bei Vektorformen zeigt die rechte Seitenleiste einen SVG-Abschnitt mit dem vollständigen Quellcode.</p>



<p class="wp-block-paragraph">Der effizienteste Workflow für SVGs die im Code eingefügt werden sollen: Per Rechtsklick auf das Element und »Copy as SVG« den Code direkt in die Zwischenablage kopieren. Anschließend lässt sich der Code in einem Optimierungstool wie <a href="https://www.svgviewer.dev/" target="_blank" rel="noreferrer noopener">SVG Viewer</a> einfügen, dort auf Korrektheit prüfen und in der Dateigröße reduzieren. Das optimierte SVG wird dann direkt in die Codebasis übernommen – ohne den Umweg über eine gespeicherte Datei. Alternativ steht der SVG-Code auch in der rechten Seitenleiste zum Kopieren bereit. Verschachtelte Komponenten – etwa ein Button, der ein Icon als eigene Instanz enthält – lassen sich durch Klicken auf die tiefere Ebene einzeln inspizieren. So kann das Icon isoliert exportiert werden.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-dev-mode-grafiken-und-svgs-exportieren/">Figma Dev Mode: Grafiken und SVGs exportieren</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-dev-mode-grafiken-und-svgs-exportieren/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Figma-Bibliotheken: Struktur, Updates und Dev-Mode-Besonderheiten</title>
		<link>https://kulturbanause.de/blog/figma-bibliotheken-struktur-updates-und-dev-mode-besonderheiten/</link>
					<comments>https://kulturbanause.de/blog/figma-bibliotheken-struktur-updates-und-dev-mode-besonderheiten/#respond</comments>
		
		<dc:creator><![CDATA[Jonas Hellwig]]></dc:creator>
		<pubDate>Thu, 26 Mar 2026 18:05:35 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Figma]]></category>
		<guid isPermaLink="false">https://kulturbanause.de/?p=41055</guid>

					<description><![CDATA[<p>Komponenten werden in Figma üblicherweise in Bibliotheken verwaltet. Im Dev Mode kann für einzelne Komponenten analysiert werden, wo diese liegen und ob es Änderungen zum Original gibt.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-bibliotheken-struktur-updates-und-dev-mode-besonderheiten/">Figma-Bibliotheken: Struktur, Updates und Dev-Mode-Besonderheiten</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></description>
										<content:encoded><![CDATA[

<header class="intro">

	<div class="container-wide">

        		
        <h1 class="page-header__title">
            <span class="page-header__title-bg">
                Figma-Bibliotheken: Struktur, Updates und Dev-Mode-Besonderheiten					
            </span>
        </h1>
        
        

	</div>

</header>




<div class="toc is-sticky" data-toc-container></div>



<h2 class="wp-block-heading" id="h-video">Video</h2>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">

</div></figure>



<p class="wp-block-paragraph"><a href="https://youtu.be/hm3h30jvrhw" target="_blank" rel="noreferrer noopener">Link zum Video</a></p>



<h2 class="wp-block-heading">Eine Datei oder mehrere?</h2>



<p class="wp-block-paragraph">Solange ein Projekt überschaubar ist und alle Designs in einer einzigen Datei leben, müssen Komponenten und Styles nicht zwingend als Bibliothek veröffentlicht werden. Erst wenn mehrere Projektdateien auf dieselben globalen Assets zugreifen sollen, lohnt sich der Schritt zur geteilten Bibliothek. In der Praxis ist das allerdings üblich. </p>



<p class="wp-block-paragraph">Das Veröffentlichen erfolgt über den Bereich Assets → Bibliotheken. Bei größeren Designsystemen mit über 1000 Komponenten kann dieser Vorgang durchaus mehrere Minuten dauern.</p>



<h2 class="wp-block-heading">Verknüpfte Bibliotheken im Dev Mode</h2>



<p class="wp-block-paragraph">Sobald eine Bibliothek veröffentlicht und in einer Projektdatei verknüpft ist, können Komponenten aus der Bibliothek ganz normal eingesetzt werden. Im Dev Mode fällt dann jedoch ein kleiner, aber wichtiger Unterschied auf:</p>



<ul class="wp-block-list">
<li>Befindet sich die Hauptkomponente <strong>in derselben Datei</strong>, zeigt Figma in der Seitenleiste schlicht »Component instance« an.</li>



<li>Stammt die Komponente <strong>aus einer externen Bibliothek</strong>, erscheint ein abweichendes Icon und ein Hinweis, dass das Original in einer anderen Datei liegt. Zusätzlich wird der Name der Quelldatei in Klammern angezeigt, zum Beispiel: »Component instance (Simple Design System)«.</li>
</ul>



<p class="wp-block-paragraph">Mit einem Klick auf dieses Icon springt man direkt in die Originaldatei und genau an die Stelle, wo die Komponente erstellt wurde. Voraussetzung ist natürlich, dass man Zugriff auf diese Datei hat. Fehlt der Zugriff, erscheint eine entsprechende Meldung.</p>



<h2 class="wp-block-heading" id="h-bibliotheks-updates-und-anderungen">Bibliotheks-Updates und Änderungen</h2>



<p class="wp-block-paragraph">Hat jemand eine Instanz lokal angepasst – etwa den Text geändert –, zeigt der Dev Mode das transparent an: Es wird darauf hingewiesen, dass Text oder Layout vom Original abweichen. Über eine Vergleichsansicht lässt sich genau nachvollziehen, was geändert wurde.</p>



<p class="wp-block-paragraph">Wenn in der Hauptbibliothek Änderungen vorgenommen werden, können diese als Update in den Projektdateien eingespielt werden. Dabei sollte man im Hinterkopf behalten, dass eine scheinbar kleine Änderung weitreichende Folgen haben kann: Da Komponenten im Atomic Design oft ineinander verschachtelt sind, kann eine einzelne Anpassung Dutzende abhängige Komponenten betreffen.</p>



<p class="wp-block-paragraph">Das Update selbst kann global oder selektiv für einzelne Instanzen eingespielt werden. Hier liegt jedoch eine wichtige Einschränkung des beschriebenen Workflows: Wurde ein Update nur für einzelne Instanzen eingespielt, ist der veraltete Stand anderer Instanzen im Dev Mode nicht leicht erkennbar.</p>
<p>Der Beitrag <a href="https://kulturbanause.de/blog/figma-bibliotheken-struktur-updates-und-dev-mode-besonderheiten/">Figma-Bibliotheken: Struktur, Updates und Dev-Mode-Besonderheiten</a> erschien zuerst auf <a href="https://kulturbanause.de">Agentur kulturbanause</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://kulturbanause.de/blog/figma-bibliotheken-struktur-updates-und-dev-mode-besonderheiten/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
