Wszystkie projekty

03 / Case study

figlift / 2026

figlift — z pliku w Figmie do strony w Astro i Sanity

Moje narzędzie, które zamienia link do pliku w Figmie w stronę w Astro z treścią w Sanity. Audytuje plik, generuje tokeny i komponenty, porównuje każdą sekcję z projektem i publikuje stronę na adresie testowym.

Rola
Projekt i development / narzędzie własne
Rok
2026
Zakres
  • Audyt pliku
  • Tokeny i Client-First
  • Astro + Sanity
  • Porównanie z Figmą
  • Agenci w Claude Code
Dyscypliny
  • Figma API
  • Astro
  • Sanity
  • TypeScript
  • Claude Code

Problem

Przeniesienie projektu z Figmy na stronę to zwykle ręczne przepisywanie: kolory, fonty i odstępy sekcja po sekcji, a na koniec porównanie „na oko”. Niespójności w pliku, takie jak kolor wpisany ręcznie zamiast zmiennej, wychodzą dopiero w kodzie.

figlift to moje narzędzie, które zamienia link do pliku w Figmie w stronę w Astro z treścią w Sanity. Kod pobiera, mierzy i porównuje, agent w Claude Code buduje komponenty, a decyzje, których nie da się wyczytać z projektu, podejmuje człowiek.

Schemat trzech etapów figlift: audyt pliku (30 reguł w 11 kategoriach, wynik 79/100), fundament (tokeny, klasy Client-First, repozytorium, Sanity, Worker na Cloudflare) i sekcje (komponent, blok w CMS-ie, treść, porównanie z Figmą z progiem 90%)
Trzy etapy, każdy w osobnej sesji. Każdy zaczyna od plików poprzedniego.

Audyt pliku

Zanim powstanie kod, figlift pobiera plik przez API Figmy i sprawdza go według 30 reguł w 11 kategoriach, od zmiennych i typografii po komponenty, treść i dostępność. Wynikiem jest ocena od 0 do 100 i jedna z trzech dróg: plik jest gotowy do budowy, wymaga uporządkowania albo wraca do projektanta.

Tam, gdzie projekt nie rozstrzyga sprawy, na przykład przy foncie spoza Google Fonts albo kolorze bez zmiennej, figlift zadaje pytanie z rekomendowaną odpowiedzią. Odpowiedzi trafiają do pliku decyzji, z którego korzystają kolejne etapy.

Wynik audytu: 79 na 100, droga „do uporządkowania”, 0 blokad, 20 decyzji, 9 poprawek automatycznych i 31 informacji. Kategorie: zmienne 100, zakres 92, kolory 30, typografia 52, odstępy 85, struktura 95, komponenty 93, responsywność 92, zasoby 85, treść 100, dostępność 67
Audyt prawdziwego pliku klienta. Kolory wpisane ręcznie zamiast zmiennych obniżyły tę kategorię do 30.

Fundament i projekt

Z pliku i decyzji powstają tokeny (kolory, fonty, odstępy, promienie, czasy animacji) i klasy w systemie Client-First, a z nich przewodnik stylu na osobnej stronie. Tokenów nikt nie poprawia ręcznie: zmiana idzie przez konfigurację, a figlift generuje je od nowa.

Potem figlift zakłada projekt: Astro i Sanity z gotowego szablonu, prywatne repozytorium, projekt w Sanity ze Studiem i Worker na Cloudflare z adresem testowym, wyłączonym z wyszukiwarek. Każdy projekt ma własne zasoby i niczego nie dzieli z innymi. Studio od początku ma podgląd na żywo: kliknięcie tekstu na stronie otwiera jego pole w CMS-ie.

Sekcje

figlift układa plan budowy i opis każdej sekcji: klasy, tokeny, teksty, obrazy z kadrowaniem i warianty komponentów. Z opisu generuje szkielet: komponent Astro, blok w Sanity i treść startową. Sekcje budują agenci, trzy lub cztery naraz, a model jest dobierany do sekcji: szybszy do prostych układów, mocniejszy do interakcji i hero.

Interakcje wynikają z konwencji w projekcie: strzałki przy rzędzie kart to karuzela, plus i minus przy pytaniach to akordeon. Stanów, których Figma nie pokazuje, takich jak hover czy focus, agent nie dodaje po cichu, tylko proponuje je do akceptacji. Wersja mobilna powstaje z ramek mobilnych, jeśli plik je ma. Jeśli nie, agent projektuje ją według reguł i pokazuje do akceptacji.

Porównanie z Figmą

Każda sekcja przechodzi porównanie z renderem z Figmy: piksel po pikselu oraz pozycja każdego elementu z tolerancją 4 px. Próg to 90%. Sekcja poniżej progu wraca do poprawki, najwyżej trzy razy, a potem trafia do raportu.

Tekst w foncie spoza Google Fonts porównanie pomija, dopóki nie dostanę plików fontu. Dzięki temu wynik nie pokazuje dokładności, której nie zmierzył.

Zgodność z Figmą 11 sekcji strony głównej na treści z Sanity: nagłówek i hero 98,2%, logotypy klientów 99,4%, usługi 98,8%, opinie 96,8%, zespół 98,5%, opinie wideo 98,9%, realizacje 97,7%, kontakt 97,7%, FAQ 98,6%, tekst SEO 95,8%, stopka 97,1%; próg 90%
Strona główna prawdziwego pliku: 11 sekcji, od 95,8 do 99,4% zgodności, na treści z Sanity.

Treść w CMS-ie

Każda sekcja to blok w Sanity, a powtarzalne elementy, takie jak opinie czy zespół, to kolekcje. Teksty w głównym języku strony trafiają do CMS-u dokładnie takie jak w Figmie. Drugi język to szkic tłumaczenia, oznaczony w Studio do sprawdzenia. Każdy obraz ma decyzję o tekście alternatywnym: opis w każdym języku albo oznaczenie jako dekoracyjny.

Wyniki

Na prawdziwym pliku (strona główna, 11 sekcji, projekt tylko w wersji na komputer) etap sekcji razem z modelem treści i zapisem do Sanity trwał 42 minuty. Dziesięć sekcji agenci zbudowali w trzech turach w 18 minut. Dopracowanie interakcji i wersji mobilnej zajęło 28 minut, częściowo w tym samym czasie.

Strona na adresie testowym w Lighthouse: na telefonie 98 za wydajność i po 100 za dostępność i dobre praktyki, na komputerze 100 we wszystkich trzech kategoriach. Strona główna waży 271 KB na telefonie.

Każdy błąd figlifta znaleziony na prawdziwym projekcie najpierw dostaje test, a dopiero potem poprawkę. Dziś narzędzie ma 449 testów automatycznych.

Co dalej

figlift jest dziś w fazie beta. W dotychczasowych przebiegach budowałem nim strony główne, bo tak wyznaczyłem zakres testów, a nie dlatego, że narzędzie na tym się kończy: ten sam przebieg obejmuje wszystkie strony z pliku. Następny krok to formularze, które zapisują zgłoszenia w CMS-ie.

Dla kogo

figlift powstał z myślą o mojej pracy: żeby szybciej i bardziej przewidywalnie zamieniać projekty z Figmy w strony. Docelowo będzie dostępny także dla innych: dla projektantów, developerów i agencji, które przenoszą projekty z Figmy na strony i chcą pracować w ten sposób, z audytem pliku na starcie, CMS-em od pierwszego dnia i porównaniem z projektem zamiast oceny na oko. Forma, w jakiej będzie dostępny, jest jeszcze otwarta.

Pytania

  • Jak przygotować plik w Figmie?

    Najlepiej, gdy każda strona to osobna ramka, sekcje mają auto layout, a kolory i typografia są zapisane jako zmienne i style. Plik nie musi być idealny: audyt pokaże, czego brakuje, i zada pytania o resztę. Nawet płaska strona bez podziału na sekcje się nada: figlift dzieli ją na sekcje w kopii pliku i sprawdza kopię z oryginałem piksel po pikselu.

  • Co, jeśli projekt nie ma wersji mobilnej?

    Agent projektuje ją według reguł i pokazuje do akceptacji. Gdy plik ma ramki mobilne, figlift buduje według nich i porównuje z nimi stronę na szerokości telefonu.

  • Czy stronę buduje AI bez kontroli?

    Nie. Kod mierzy i porównuje każdą sekcję z Figmą, agent buduje komponenty, a człowiek zatwierdza decyzje, wersję mobilną i każdą publikację.

Napisz, czego potrzebujesz.

Odpowiedź do 24 h

Czego dotyczy wiadomość?

Podaj imię i nazwisko.

Podaj poprawny adres e-mail.

Napisz wiadomość (min. 10 znaków).

Dodaj szczegóły: firma, termin, budżet
Budżet opcjonalnie

Dane z formularza wykorzystam wyłącznie do odpowiedzi na wiadomość. Polityka prywatności

SR / Terminal

Tab uzupełnia · ↑↓ historia · Esc zamyka