Zum Hauptinhalt springen
Version: 2.7.1

Komponentenaufbau in Figma

Die folgenden Punkten haben keinen Anspruch auf Vollständigkeit und adressieren erst einmal die grundlegendsten Aspekte, auf die geachtet werden sollten, wenn es um den Aufbau von Komponenten in Figma geht.

Gibt es schon was ... ?

Berücksichtige was schon vorhanden ist. Durch Kombination der bestehenden Komponetnen lassen sich schnell neue Komponenten erzeugen (Atomic-Design-Prinzip). Netzwerke oder frage im KERN Team oder der KERN Community, ob es bereits eine Antwort auf deinen Use Cases gibt.

Zur Unterstützung bieten wir folgende Kanäle:

Im Bereich Design-System-Benchmark findest du eine Auflistung der Design Systeme die für uns eine Benchmark darstellen und an denen wir uns bei der Entwicklung der KERN Komponenten orientieren. Es lassen sich auch Komponenten aus anderen Design Systemen auf KERN stylen. Unter Interaktion findest du eine kurze Erläuterung, wie bspw. unsre Interaktions Variablen angewendet werden.

Generelles

Der Aufbau in Figma sollte möglichst nah am Code-Aufbau sein. Orientiere dich an bestehenden Komponenten und sei konsistent bei der Benennung von Layern, Properties und Ebenenstruktur – nur so sind Komponenten als Assets untereinander austauschbar.

Bitte nutze beim Aufbau von Komponenten (und auch Screenlayouts) Auto-Layout mit den von KERN zur Verfügung gestellten Größenvariablen.Die Nutzung von Autolayout erleichtert es Entwicklern zusätzlich den von Figma zur Verfügung gestellten Code zu nutzen.

Best Practice für Auto-Layout in KERN.

Varianten vs. Properties

Figma ermöglicht es, viele Varianten einer Komponente über Properties (z. B. Varianten, Booleans, Text) in einer einzigen Komponente abzubilden. Zu viele Properties können jedoch zu Fehlern und Unübersichtlichkeit führen. Umgekehrt bläht eine eigene Komponente für jede Variante die Bibliothek auf. Finde daher einen Mittelweg: Steuere Zustände (z. B. Hover, Disabled, Icon) über Properties, aber lege für grundlegend verschiedene Typen (z. B. Primary, Secondary) separate Komponenten an.

Hinweis

Dieser Punkt gilt für Menschen. Im Zuge von KI kann dieser Punkt anders bewertet werden.

Verschachtelung

Auch hier gilt es eine gesunde Balance zu finden. Bei KERN versuchen wir die Verschachtelungstiefe auf ein Minimum zu halten. Im Regelfall genügt der „Einfache Aufbau" und eine Anpassung mehrere Elemente über das „Multi-Edit" Feature von Figma.

Es gibt wiederum auch Fälle in denen es hilfreich ist erst eine „Elternkomponente" von der diverse Varianten abgeleitet werden. Ein gutes Beispiel dafür wäre unsere Input Komponente. Die Anatomie aller Input Komponenten werden über die „base-form" gesteuert. Wenn wir jetzt bspw. Änderungen an der Position oder den Aufbau der Fehlermeldung vornehmen möchten, können wir das jetzt an einer Stelle tun und alle „Kind-Komponenten" passen sich auf einen Schlag an.

Eine „Kind Komponente" ist dann eine konkrete Komponenten für einen bestimmten Use-Cases: Input-Text, Input-E-Mail, Input-Checkboxes, etc. Die Kind-Komopenten sind Kombinatoriken aus der Eltern-Komponente. Nicht alle Properties sollten durchgereicht werden, um die Bedienung einfach zu halten und Komplexität zu reduzieren.

Namenskonventionen

Properties und Komponenten werden auf Englisch und kleingeschrieben benannt, um den Übergang von Design zu Entwicklung zu erleichtern. Design und Entwicklung sollen möglichst dieselbe Sprache nutzen. Ansonsten gilt detsch als Hauptsprache. Beispiele:

  • state: Zustand einer Komponente (z. B. hover)
  • focus: Boolean-Property
  • hint: Hinweistext in Formularen
  • ✏️ label: Text-Property. Hinweis hierzu: Die Werte der Text-Properties sind auf Deutsch.
  • content-slot: Platzhalter-Property
  • Swap-Property: Gibt austauschbare Elemente an (z. B. component, label-type, icon-type)
  • ↳: Zeigt Abhängigkeit zu einer übergeordneten Property

Der vorausgefüllten Texte einer Text-Property (z.B.: Label, Hinweis, Titel, Überschrift, Legende, Fehlermeldung, Beschreibung) sollten kurz, generisch und funktional sein, in Ausnahmefällen beispielhaft.

Barrierefreiheit

Die KERN Komponenten erfüllen mindestens das AA-Level nach BITV 2.0. Mehr Infos unter Barrierefreiheit oder:

KERN Chat (Beta 2.1)

Hallo!

Ich bin die KERN KI und kann zu allen Inhalten auf dieser Website Auskunft geben.