Budowanie biblioteki komponentów za pomocą Figma

Opublikowany: 2022-03-10
Szybkie podsumowanie ↬ Figma stała się bardzo popularnym narzędziem dla projektantów stron internetowych i produktów, głównie ze względu na skupienie się na zespołach projektowych i bibliotekach zespołów. Ten artykuł ma na celu pomóc Ci uniknąć błędów i pomóc w budowaniu własnej biblioteki komponentów Figma.

Pracuję nad stworzeniem i utrzymaniem głównej biblioteki naszego systemu projektowania, Lexicon. Używaliśmy aplikacji Sketch przez pierwszy rok, a potem przenieśliśmy się do Figma, gdzie zarządzanie biblioteką różniło się w niektórych aspektach, co sprawiało, że zmiana była dla nas dość trudna.

Szczerze mówiąc, jak każda budowa biblioteki, wymaga czasu, wysiłku i planowania, ale jest tego warta, ponieważ pomoże w dostarczeniu szczegółowych komponentów dla Twojego zespołu. Pomoże to również zwiększyć ogólną spójność projektu i na dłuższą metę ułatwi konserwację. Mam nadzieję, że wskazówki, które przedstawię w tym artykule, ułatwią Ci cały proces.

W tym artykule przedstawimy kroki potrzebne do zbudowania biblioteki komponentów za pomocą Figma przy użyciu stylów i głównego komponentu. (Komponent główny pozwoli ci zastosować wiele zmian jednocześnie.) Omówię również szczegółowo organizację komponentów i podam możliwe rozwiązanie, jeśli masz w bibliotece dużą liczbę ikon.

Uwaga: Aby ułatwić korzystanie, aktualizowanie i konserwację, stwierdziliśmy, że najlepiej jest użyć oddzielnego pliku Figma dla biblioteki, a następnie opublikować go jako „bibliotekę” zespołu, zamiast publikować poszczególne komponenty.

Więcej po skoku! Kontynuuj czytanie poniżej ↓

Pierwsze kroki

Ten przewodnik został stworzony z perspektywy projektanta i jeśli masz przynajmniej podstawową wiedzę na temat Figma (lub Sketch), powinien pomóc Ci rozpocząć tworzenie, organizowanie i utrzymywanie biblioteki komponentów dla Twojego zespołu projektowego.

Jeśli jesteś nowy w Figma, zapoznaj się z poniższymi samouczkami przed kontynuowaniem artykułu:

  • Najlepsze praktyki: komponenty, style i biblioteki współdzielone
  • Wprowadzenie do Figma: Przewodnik dla początkujących do Figma Basics (wideo)
  • Figma dla początkujących
  • Figma 101

Wymagania

Zanim zaczniemy, musimy spełnić pewne wymagania, aby zdefiniować style dla biblioteki.

Skala typografii

Pierwszym krokiem do zrobienia jest zdefiniowanie skali typografii; pomaga skoncentrować się na tym, jak rozmiar tekstu i wysokość linii rosną w systemie, umożliwiając zdefiniowanie wizualnej hierarchii tekstów.

skala tekstu w różnych rozmiarach, od małych do dużych
Skale typograficzne są przydatne do poprawy hierarchii elementów, ponieważ zarządzanie rozmiarami i wagami czcionek może naprawdę poprowadzić użytkownika przez treść. (duży podgląd)

Rodzaj wagi zależy od tego, co projektujesz. Powszechnie stosuje się większe proporcje przy projektach stron internetowych, a mniejsze przy projektowaniu produktów cyfrowych.

Powodem tego jest cel projektu — strona internetowa jest zwykle zaprojektowana do komunikacji i konwersji, więc daje jedno lub dwa bezpośrednie działania. W tym kontekście łatwiej jest mieć 36 pikseli dla tytułu głównego, 24 pikseli dla tytułu dodatkowego i 16 pikseli dla tekstu opisu.

Powiązane zasoby: „8-punktowa siatka: typografia w sieci” autorstwa Elliota Dahla.

Z drugiej strony produkty lub usługi cyfrowe mają na celu zapewnienie rozwiązania konkretnego problemu, zwykle z wieloma działaniami i możliwymi przepływami. Oznacza to więcej informacji, więcej treści i więcej komponentów w tej samej przestrzeni.

W tym przypadku osobiście uważam, że rzadko używam więcej niż 24 piksele dla tekstów. Częściej używa się małych rozmiarów komponentów — zwykle od 12 do 18 pikseli, w zależności od wagi tekstu.

Jeśli projektujesz produkt cyfrowy, warto najpierw porozmawiać z programistami. Łatwiej jest utrzymać skalę typograficzną opartą na EM/REM bardziej niż na rzeczywistych pikselach. Zawsze zalecane jest utworzenie reguły konwersji pikseli na wielokrotności EM/REM.

Zasób pokrewny: „Definiowanie modułowej skali typów dla interfejsu internetowego” autorstwa Kelly Dern.

Schemat kolorów

Po drugie, musimy zdefiniować schemat kolorów. Myślę, że najlepiej będzie podzielić to zadanie na dwie części.

  1. Najpierw musisz zdefiniować główne kolory systemu . Zalecam zachowanie prostoty i używanie maksymalnie czterech lub pięciu kolorów (w tym kolorów walidacyjnych), ponieważ im więcej kolorów tutaj uwzględnisz, tym więcej rzeczy będziesz musiał zachować w przyszłości.
  2. Następnie wygeneruj więcej wartości kolorów za pomocą funkcji Sass, takich jak „Jaśniejsze” i „Ciemniejsze” — działa to naprawdę dobrze w przypadku interfejsów użytkownika. Główną zaletą tej techniki jest użycie tego samego odcienia dla różnych wariantów i uzyskanie reguły matematycznej, którą można zautomatyzować w kodzie. Nie możesz tego zrobić bezpośrednio z Figma, ale każdy generator kolorów Sass będzie działał dobrze — na przykład SassMe autorstwa Jima Nielsena. Lubię zwiększać funkcje o 1%, aby mieć większy wybór kolorów.
2 różne zestawy kolorów z różnymi tonami
Gdy masz już swoje główne kolory (w naszym przypadku niebieski i szary), możesz generować gradienty za pomocą funkcji rozjaśniania i przyciemniania. (duży podgląd)

Wskazówka : aby móc zastosować przyszłe zmiany bez konieczności zmiany nazw zmiennych, unikaj używania koloru jako części nazwy koloru. Np. zamiast $blue użyj $primary .

Zalecana literatura : „Jak nazywasz zmienne kolorów?” autor: Chris Coyier

Style Figma

Gdy mamy już ustawioną skalę typografii i schemat kolorów, możemy ich użyć do zdefiniowania stylów Biblioteki.

To pierwszy rzeczywisty krok do stworzenia biblioteki. Ta funkcja umożliwia użycie jednego zestawu właściwości w wielu elementach .

2 kształty przedstawiające paletę kolorów i tekst reprezentujący możliwe style
Style to sposób na kontrolowanie wszystkich podstawowych szczegółów w Twojej bibliotece. (duży podgląd)

Konkretny przykład

Załóżmy, że definiujesz kolor swojej marki jako styl, jest to delikatny niebieski i pierwotnie stosujesz go do 500 różnych elementów. Jeśli później zdecydujesz, że musisz zmienić go na ciemniejszy niebieski z większym kontrastem, dzięki stylom możesz zaktualizować wszystkie 500 stylizowanych elementów naraz, więc nie będziesz musiał tego robić ręcznie, element po elemencie.

Możemy zdefiniować style dla:

  • Tekst
  • Zabarwienie
  • Efekty
  • Siatki

Jeśli masz wariacje tego samego stylu, aby ułatwić ich późniejsze odnalezienie, możesz nazwać pojedyncze style i rozmieścić je w panelu jako grupy. Aby to zrobić, użyj tej formuły:

Nazwa grupy/nazwa stylu

Poniżej zamieściłem sugestię, jak nazwać teksty i style kolorów.

Style tekstu

Właściwości, które można zdefiniować w stylu tekstu:

  • Rozmiar czcionki
  • Grubość czcionki
  • Wysokość linii
  • Odstępy między literami

Wskazówka : Figma drastycznie zmniejsza liczbę stylów, które musimy zdefiniować w bibliotece, ponieważ wyrównania i kolory są niezależne od stylu. Możesz połączyć styl tekstu ze stylem koloru w tym samym elemencie tekstu.

4 kształty z tekstem w środku używane jako przykłady różnych stylów tekstu
Możesz zastosować całą skalę typografii, którą widzieliśmy wcześniej, jako style tekstu. (duży podgląd)

Nazywanie stylów tekstu

Zalecam stosowanie reguły nazewnictwa, takiej jak „Rozmiar/Waga”
(np.: 16/zwykły, 16/pół pogrubiony, 16/ pogrubiony).

Figma dopuszcza tylko jeden poziom wcięć, jeśli chcesz dołączyć czcionkę, zawsze możesz dodać przedrostek przed rozmiarem:
Rozmiar/waga FontFamily lub rozmiar/waga FF
*(np. SourceSansPro 16/Regular lub SSP 16/Regular ).*

Style kolorów

Styl koloru używa jego wartości szesnastkowej ( #FFF ) i krycia jako właściwości.

Wskazówka : Figma umożliwia ustawienie stylu koloru dla wypełnienia i innego dla obramowania w tym samym elemencie, czyniąc je niezależnymi od siebie.

4 kształty z kolorami w środku, używane jako przykłady różnych stylów kolorystycznych
Możesz zastosować style kolorów do wypełnień, obramowań, tła i tekstów. (duży podgląd)

Nazywanie stylów kolorów

Dla lepszej organizacji polecam zastosować zasadę „Kolor/Wariant”. Nazwaliśmy nasze style kolorów za pomocą „Podstawowy/Domyślny” dla koloru początkowego, „Główny/L1”, „Główny/L2” dla jaśniejszych wariantów i „Główny/D1”, „Główny/D2” dla ciemniejszych wariantów.

Efekty

Podczas projektowania interfejsu może być również konieczne stworzenie elementów, które wykorzystują pewne efekty, takie jak cienie (przeciągnij i upuść może być przykładem wzoru wykorzystującego efekty cieni). Aby mieć kontrolę nad tymi szczegółami graficznymi, można uwzględnić w bibliotece style efektów, takie jak cienie lub rozmycia warstw, a także w razie potrzeby podzielić je na grupy.

2 kształty podobne do papieru, jeden nad drugim, aby pokazać efekt cienia
Zdefiniuj cienie i rozmycia, aby zarządzać specjalnymi efektami interakcji, takimi jak przeciągnij i upuść. (duży podgląd)

Siatki

Aby zapewnić coś bardzo przydatnego dla swojego zespołu, uwzględnij style siatki. Możesz zdefiniować siatkę 8px, siatkę 12 kolumn, siatki elastyczne, aby Twój zespół nie musiał ich odtwarzać.

12 kolumn reprezentujących style siatki
Nie ma już potrzeby zapamiętywania rozmiarów siatki. (duży podgląd)

Wskazówka : korzystając z tej funkcji, możesz podać wszystkie różne punkty przerwania jako „style siatki”.

Komponent główny

Figma pozwala generować wiele wystąpień tego samego komponentu i aktualizować je za pomocą jednego głównego komponentu. To prostsze niż myślisz, możesz zacząć od kilku małych elementów, a następnie użyć ich do rozwinięcia swojej biblioteki.

pojedyncza grupa trzech kształtów, która pokazuje, jak można uzyskać siedem różnych wyników, ukrywając niektóre kształty
Jeden główny składnik, który rządzi nimi wszystkimi! (duży podgląd)

Aby lepiej wyjaśnić ten przepływ pracy, użyję jednego z podstawowych elementów, które mają wszystkie biblioteki: przycisków.

Guziki!

Każdy system ma różne typy przycisków, które reprezentują ważność działań. Możesz zacząć mieć przyciski podstawowe i dodatkowe z tylko tekstem i jednym rozmiarem, ale rzeczywistość jest taka, że ​​prawdopodobnie będziesz musiał utrzymywać coś takiego:

  • 2 typy kolorów ( Podstawowy | Dodatkowy )
  • 2 rozmiary guzików ( Zwykły | Mały )
  • 4 typy treści ( Tylko tekst | Tylko ikona | Tekst + ikona po prawej | Ikona po lewej + tekst )
  • 5 stanów ( Domyślnie | Hover | Aktywny | Wyłączone | Fokus )

To dałoby nam do 88 różnych komponentów do utrzymania tylko za pomocą zestawu przycisków wymienionych powyżej!

zrzut ekranu z 88 różnymi elementami przycisków
Dzięki temu, jak zbudowana jest Figma, możesz łatwo zarządzać wieloma instancjami przycisków jednocześnie. (duży podgląd)

Zacznijmy krok po kroku

Pierwszym krokiem jest umieszczenie wszystkich odmian razem w tym samym miejscu. Dla przycisków, których będziemy używać:

  • Pojedynczy kształt tła przycisku, dzięki któremu możemy następnie umieścić style kolorów wypełnienia i obramowania;
  • Pojedynczy tekst, który będzie miał zarówno styl tekstu, jak i kolor;
  • Trzy elementy ikon (umieszczone po prawej, środkowej i lewej stronie) wypełnione stylem koloru (będziesz mógł łatwo zamienić ikony).
grupa podzielonych elementów: kształt prostokąta, tekst przycisku i 3 ikony
Kształt, tekst i ikona wchodzą do paska Figma... (duży podgląd)

Drugim krokiem jest utworzenie komponentu głównego (użyj skrótu Cmd + Alt + K na Macu lub Ctrl + Alt + K na Windows) ze wszystkimi odmianami jako instancjami. Proponuję użyć innego i neutralnego stylu dla elementów wewnątrz głównego komponentu i użyć prawdziwych stylów na podkomponentach, ta sztuczka pomoże zespołowi używać tylko podkomponentów.

Możesz zobaczyć wizualną różnicę między komponentem głównym a komponentem podrzędnym w następnym kroku:

Grupa elementów wyśrodkowanych w tej samej przestrzeni, jeden nad drugim
Im więcej elementów, tym więcej instancji możesz kontrolować. (duży podgląd)

W trzecim kroku musisz zduplikować główny komponent, aby wygenerować instancję, teraz możesz użyć tej instancji do stworzenia podkomponentu, a od teraz każda zmiana dokonana w komponencie głównym spowoduje również zmianę podkomponentu, który stworzyłem.

Możesz teraz zacząć stosować różne style, które widzieliśmy wcześniej, do elementów wewnątrz komponentu podrzędnego i oczywiście możesz ukryć elementy, których nie potrzebujesz w tym komponencie podrzędnym.

Przykład pokazujący, jak można wygenerować 8 różnych przycisków z 1 pojedynczego komponentu
Dzięki stylom kolorystycznym możesz generować różne elementy przy użyciu tego samego kształtu. W tym przykładzie style podstawowe i drugorzędne są generowane z tego samego komponentu głównego. (duży podgląd)

Wyrównanie tekstu

Jak pokazałem w stylach, wyrównania są niezależne od stylu. Więc jeśli chcesz zmienić wyrównanie tekstu, po prostu wybierz go, naciskając Cmd / Ctrl i zmieniając go. Lewy, środkowy lub prawy: wszystko będzie działać i możesz zdefiniować różne podkomponenty, tak jak ja za pomocą przycisków.

Wskazówka : aby przyspieszyć pracę bez konieczności wyszukiwania dokładnej warstwy elementu, usunięcie elementu wewnątrz instancji spowoduje jego ukrycie, a nie faktyczne usunięcie.

Organizacja komponentów

Jeśli pochodzisz ze Sketcha, możesz mieć problemy z organizacją komponentów w Figma, ponieważ istnieje kilka kluczowych różnic między tymi dwoma narzędziami. To jest krótki przewodnik, który pomoże ci dobrze zorganizować komponenty, tak aby menu instancji nie wpływało negatywnie na efektywność twojego zespołu.

pokazywanie otwartego menu instancji z większą liczbą nieuporządkowanych podmenu
Jak widać tutaj, nasza biblioteka miała tak wiele podmenu, że w rezultacie nawigacja znikała z ekranu na MacBookach, co było dużym problemem dla naszej biblioteki. Udało nam się znaleźć obejście tego problemu. (duży podgląd)
pokazywanie ulepszeń w menu instancji otwieranych z uporządkowanymi podmenu
Był to wynik po ulepszeniu porządku w bibliotece zgodnie z zasadami stron i ramek, teraz jest on o wiele bardziej użyteczny i zorganizowany dla naszych zespołów. (duży podgląd)

Wszyscy tam byliśmy, rozwiązanie jest prostsze niż myślisz!

Oto czego się dowiedziałem o tym, jak organizować komponenty.

Nazywanie Figmy

Podczas gdy w Sketch cała organizacja zależy tylko od nazwy pojedynczego komponentu, w Figma zależy to od nazwy strony , nazwy ramki i nazwy pojedynczego komponentu — dokładnie w tej kolejności.

Aby zapewnić dobrze zorganizowaną bibliotekę, musisz myśleć o niej jako o organizacji wizualnej. Dopóki przestrzegasz kolejności, możesz dostosować nazewnictwo do swoich potrzeb.

Oto jak to podzieliłem:

  • Nazwa pliku = Nazwa biblioteki (np. Leksykon);
  • Nazwa strony = Grupa komponentów (np. karty);
  • Nazwa ramki = Typ komponentu (np. karta obrazu, karta użytkownika, karta folderu itp.);
  • Nazwa komponentu = Stan komponentu (np. Domyślny, Najechanie, Aktywny, Wybrany itp.).
Wyświetla stronę główną o nazwie „Karty”, ramkę o nazwie „Karta obrazu” i warstwę o nazwie „Karta Hover”
Ta struktura jest odpowiednikiem nazewnictwa szkicu „Karty/karta obrazu/najechanie na kartę”. (duży podgląd)

Dodawanie poziomów wcięć

Podczas tworzenia biblioteki Lexicon stwierdziłem, że w rzeczywistości potrzebowałem więcej niż trzech poziomów wcięć dla niektórych komponentów, takich jak przyciski, które widzieliśmy wcześniej.

W takich przypadkach można rozszerzyć nazewnictwo tą samą metodą co Szkic dla symboli zagnieżdżonych (używając ukośnika w nazwie komponentu, np. „Komponent/Podkomponent”), pod warunkiem, że zrobisz to dopiero po trzecim poziomie wcięcie, z poszanowaniem porządku strukturalnego pierwszych trzech poziomów, jak wyjaśniono w poprzednim punkcie.

Oto jak uporządkowałem nasze przyciski:

  • Nazwa strony = Grupa Komponentów (np. Przyciski);
  • Nazwa ramki = Rozmiar komponentu (np. Regularny lub Mały);
  • Nazwa komponentu = Styl/Typ/Stan (np. Podstawowy/Tekst/Najechanie).
Wyświetlenie strony głównej o nazwie 'Buttons', ramki o nazwie 'Buttons Regular' i warstwy o nazwie 'Primary/Text/Button Hover' jako przykład możliwych struktur.
Ta struktura jest odpowiednikiem nazewnictwa szkicu „*Przyciski/Przyciski Zwykłe/Podstawowe/Tekst/Przycisk najechania*”. (duży podgląd)

Wskazówka : możesz dołączyć nazwę komponentu (lub prefiks nazwy) na ostatnim poziomie, pomoże to Twojemu zespołowi w lepszej identyfikacji warstw podczas importowania komponentów z biblioteki.

Organizacja ikon

Porządkowanie ikon w Figma może być trudne, gdy zawiera dużą liczbę ikon.

W przeciwieństwie do Sketch, który wykorzystuje funkcję przewijania, Figma używa podmenu do dzielenia komponentów. Problem polega na tym, że jeśli masz dużą liczbę ikon zgrupowanych w podmenu, w pewnym momencie mogą one zniknąć z ekranu (moje doświadczenie z Figma na MacBooku Pro).

Pokazywanie menu instancji dla ikon z jednym przewijanym podmenu.
Przykład organizacji komponentów w pojedynczym przewijanym podmenu. (duży podgląd)
Pokazuje menu instancji dla ikon z więcej niż 10 podmenu i obejmuje cały ekran.
Jak widać, używanie Macbooka Pro powodowało, że menu wychodziły poza ekran. (duży podgląd)

Oto dwa możliwe rozwiązania:

  • Rozwiązanie 1
    Utwórz stronę o nazwie „Ikony”, a następnie ramkę dla każdej litery alfabetu, a następnie umieść każdą ikonę w ramce w oparciu o nazwę ikony. Na przykład, jeśli masz ikonę o nazwie „Plus”, zostanie ona umieszczona w ramce „P”.
  • Rozwiązanie 2
    Utwórz stronę o nazwie „Ikony”, a następnie podziel ją według ramek na podstawie kategorii ikon. Na przykład, jeśli masz ikony przedstawiające łódź, samochód i motocykl, możesz umieścić je w ramce o nazwie „pojazdy”.
Menu instancji jest otwarte, pokazując alfabetyczną kolejność ikon w Figma.
Ja osobiście zastosowałem rozwiązanie 1. Jak widać na tym przykładzie, mieliśmy ogromną liczbę ikon, więc to było lepiej dopasowane. (duży podgląd)

Wniosek

Teraz, gdy już wiesz, co dokładnie kryje się za budową biblioteki zespołu w Figma, możesz sam zacząć ją budować! Figma ma bezpłatny abonament, który pomoże Ci rozpocząć i eksperymentować z tą metodologią w jednym pliku (jednak jeśli chcesz udostępnić bibliotekę zespołu, będziesz musiał wykupić opcję „Professional”).

Wypróbuj, stwórz i zorganizuj kilka zaawansowanych komponentów, a następnie zaprezentuj bibliotekę członkom zespołu, aby ich zadziwić — lub być może przekonać ich do dodania Figma do swojego zestawu narzędzi.

Na koniec chciałbym wspomnieć, że tutaj, w Liferay, uwielbiamy projekty open-source, dlatego udostępniamy kopię naszej biblioteki Lexicon wraz z kilkoma innymi zasobami. Możesz korzystać z komponentów biblioteki Lexicon i innych zasobów za darmo, a Twoja opinia jest zawsze mile widziana (włączając w to komentarze Figma, jeśli wolisz).

  • Pobierz bibliotekę „Leksykon”
Logo Lexicon jest podobne do sześciokąta i odcisku palca.
Lexicon to język projektowania Liferay, używany do dostarczania systemu projektowania i biblioteki Figma dla różnych zespołów produktowych. (duży podgląd)

Jeśli masz pytania lub potrzebujesz pomocy z pierwszą biblioteką komponentów w Figma, zapytaj mnie w komentarzach poniżej lub napisz do mnie na Twitterze.

Dalsze zasoby

  • „8-punktowa siatka: typografia w sieci”, Elliot Dahl, freeCodeCamp
  • Definiowanie modułowej skali typów dla internetowego interfejsu użytkownika”, Kelly Dern, Medium
  • „Względne palety kolorów z sassem”, Ethan Muller, Sparkbox
  • SassMe (narzędzie stworzone przez Jima Nielsena, które pozwala wizualizować funkcje kolorów Sass HSL w czasie rzeczywistym)
  • „Jak nazywasz zmienne kolorów?”, Chris Coyier, CSS-Tricks
  • „Najlepsze praktyki: komponenty, style i biblioteki współdzielone”, Thomas Lowry, Figma
  • Kanał YouTube Figma
  • Artykuły pomocy Figma