Design Dokumentation für Frontendentwickler mit Figma Code-Connect

2.5.2025 - Michael Burgdorfer

Figma Code Connect

Das User Interface Design einer Applikation ist einem ständigen Wandel unterworfen. Trends kommen und gehen. Wie lässt sich ein Design-System über Jahre hinweg konsistent und effizient weiterentwickeln, ohne dass ein kostspieliges Redesign nötig ist?

Durchschnittlich wird eine App oder Website alle 2-4 Jahre neu gestaltet. Beim einem Redesign wird debei häufig bei null begonnen – man beginnt auf einer leeren Leinwand. Bestehende Designelemente oder Strukturen früherer Versionen werden dabei oft nicht berücksichtigt. Bestehender Code kann vielleicht nicht mehr verwendet werden. Das führt zu erhöhtem Aufwand und entsprechend höheren Kosten. Zudem kann sich die Entwicklung über Monate hinziehen, bis ein endgültiges Design feststeht.

Ist das Design einmal umgesetzt schleichen sich unweigerlich Designinkonsistenzen in die Applikation: Während neu entwickelte Features gängige Designsprachen und Methoden anwenden, sehen andere Elemente altmodisch und langweilig aus.

Anstelle von einem Redesign bevorzugen Firmen vermehrt kontinuierliche, schrittweise Verbesserungen um aktuell zu bleiben. Man spricht hier von einem Living Styleguide oder einem Design-System.

Ein Design System als Dokumentation

Der Frontendentwickler entnimmt darin, wie die einzelnen UI-Elemente auszusehen haben, welche Dimensionen und Abstände eingehalten müssen. Variablen für Farben, Grössen und Typografie werden darin definiert.

Eine grosse Schwierigkeit ist, dass ein Design-System für Software dynamisch gestaltet werden muss: Bildschirmgrössen variieren je nach Gerät: Ein Browserfenster kann eine x-beliebige Grösse haben und muss immer funktionieren. Die Textlänge kann je nach Inhalt und Sprache variabel sein. Der Benutzer hat vielleicht Accessibility-Features aktiviert (z.B. Textgrösse) oder im Browser die Skalierung verändert. Die Implementierung eines Dark- und Lightmode wird heutzutage in der Appwelt erwartet.

Figma Code Connect

Seit 2024 stellt Figma ein Tool zur Verfügung, das sich diesem Problem annehmen soll. Eine Lösung um den Quellcode und das Design quasi zu verheiraten!

Ist das Figma-Projekt samt seiner Komponenten erstmals mit Figma Code Connect verbunden, ist der Frontend-Entwickler in der Lage vollständige validen Codeblocks einzelner Komponente zu generieren oder zu testen. Egal welcher State oder Properties besagte Komponente aufweisen.

Figma Connect erkennt aus dem Figmadesign welche Variablen und Varianten spezifiziert sind und erstellt ein Component.figma.tsx Metafile. Darin können die einzelnen Properties nun mit dem realen Source-Code der App zugewiesen werden. Figma wiederum liest das gemappte Metafile und zeigt im Vorschau-Modus (im Dev-Modus) die Interaktive Komponente mit allen Eigenschaften, Props und deren korrekten Benennung an.

Code Connect Flow

React Beispiel: Button.tsx

Hier haben wir einen simplen Button:

Mit dem folgenden Befehl wird ein Metafile button.figma.tsx erzeugt:

npm: figma connect create https://www.figma.com/design/url-to-component

Die Mappings müssen hier nur noch ergänzt werden. Importiert wird die <Button/> Komponente vom Quellcode:

Die Änderungen können nun zurück an figma publiziert werden

npm: figma connect publish

Dort ist der Button nun mit dem Code aus dem Github-Repo verbunden. Im Preview-Editor kann im Dev-Modus der Benutzer alle möglichen Props auch wahlweise ändern um so den generierten (validen) Code kopieren.
Code Connect Preview example

Fazit

Befindet sich ein Design-System im Entstehungsprozess, können viele Missverständnise zwischen Designer/in und Entwickler/in entstehen. Wann ist ein Design fertig? Welche Screens sind nun "Ready-for-dev" und wo wird noch herumexperimentiert? Ändert sich das Design während der Entwicklung die Komponente vielleicht schon entwickelt hat?

Die Lösung von Figma ist ein interaktives, lebendes Design-System, welches direkt mit dem Quellcode verbunden ist! Die Entwicklung des Designs wird so Hand-in-Hand mit dem Sourcecode zu einem laufenden Prozess. Kostenspielige Redesigns werden so in Zukunft nicht mehr gebraucht - das design wird kontinuierlich verbessert. Ihre App bleibt so über jahrzente modern und breakt den existierenden Code nicht.

Kontakt

Smoca AG
Technoparkstrasse 2
Gebäude A, 3. Stock
8406 Winterthur

Jobs

  • Momentan sind keine Stellenangebote verfügbar

Letzter Blogeintrag

Design Dokumentation für Frontendentwickler mit Figma Code-ConnectMichael Burgdorfer - 2.5.2025

Das User Interface mehr ...

  • Smoca Facebook
  • Smoca Twitter
  • Smoca LinkedIn
  • Smoca RSS Feed