Framework dla Webflow
4 godz. 22 min · Webflow · UI, UX i Webdesign
Grzegorz RógIdea ArchitectDuża część naszej pracy sprowadza się do projektowania prostych stron - wydarzeń, małych sklepów, ofert, landing page'y. SystemFlow znacznie upraszcza i przyspiesza naszą pracę w tym zakresie, oferując szereg gotowych komponentów, sekcji i template'ów, które możesz wykorzystać do poskładania takiej strony w kilka minut.
SystemFlow jest w całości zmapowany na Figmę, co znaczy, że otrzymujesz kompletny UI Kit dla Figmy, z pomocą którego możesz projektować. Następnie, stworzone w ten sposób projekty w prosty sposób przeniesiesz do Webflow, korzystając z tych samych nazw komponentów, tworząc z tego gotowy, działający projekt strony.
W SystemFlow masz możliwość zdefiniowania własnej stylistyki całego systemu - globalne zmiany do typografii oraz swatchy kolorystycznych sprawią, że fonty i kolory zmienią się na przestrzeni całego Twojego projektu! W ten sposób łatwo przygotujesz strony, które stylistycznie znacznie odbiegają od pierwotnej koncepcji framework'u i są dopasowane do identyfikacji Twojego klienta.
Plik Webflow, na którym pracujesz z Frameworkiem, zawiera pełną dokumentację, która zmienia się na żywo, w trakcie projektowania. Oznacza to, że po publikacji samej strony w Webflow, otrzymujesz kompletną referencję z design tokenami, wyglądem formularzy, przycisków, komponentów i innych elementów, którą możesz przekazać klientowi. Przykład dokumentacji wygląda tak: https://systemflow-v-1-1-51e1ee81-49590199e0f65.webflow.io/style-guide/about/overview
SystemFlow powstał w jednym celu - aby pomóc nam tworzyć projekty dla siebie i naszych klientów znacznie szybciej, wydajniej, w sposób zorganizowany. Ponadto, aby wykorzystać Webflow jako najlepszy edytor, dający nam łatwy dostęp do zmian w ramach uporządkowanej struktury, obsługę CMS, E-Commerce, a klientowi możliwość edycji elementów strony z przeglądarki. Z drugiej strony, wykorzystaliśmy Figmę czyli najlepsze narzędzie do projektowania UI z masą dodatków i pluginów, które usprawnią Twoją pracę!
Ten kurs przygotowany jest z myślą o osobach, które w swoich firmach tworzą wiele stron, na przykład marketingowych i chcą czy to do tworzenia finalnych stron czy prototypów, wykorzystać Webflow i ewentualnie Figmę. Kurs nadaje się też doskonale dla Freelancerów którzy oferują swoje usługi tworzenia stron w Webflow, a także agencji kreatywnych, które mogą znacznie przyspieszyć swoją pracę dzięki SystemFlow!
SystemFlow 1.0+
Tej lekcji chciałbym wytłumaczyć Ci czym
są komponenty w system flow, jak z nich korzystać.
To jest taki podstawowy budulec tego, z czego będziemy korzystać.
Będziemy używać rozmaitych komponentów czy to całych template ów tak jak tutaj, czy
poszczególnych komponentów takich jak przyciski, nagłówki, drop down itd.
Natomiast wszystko to, z czego będziemy
korzystać jest domyślnie komponentem Web Flow.
To znaczy, że ma taką zieloną ramkę i ma symbol komponentu.
Wszystkie komponenty możemy podejrzeć tutaj.
Wielu nazywa je też symbolami.
Prawdopodobnie zmieni zaraz nazwę na
komponenty i wszystkie te komponenty są dostępne.
Natomiast ich podgląd nie jest tutaj zbyt
wygodne, więc aby korzystać z takich komponentów i np.
wstawić je na stronę główną.
Tak jak wspomniałem wcześniej, najlepiej jest po prostu używać dokumentacji,
poszukiwać w dokumentacji tych komponentów, które nam się przydadzą np.
pricing i jak stwierdzimy, że chcemy takim
pricing table umieścić, to po prostu klikamy na jego nazwę.
Następnie wybieramy Command Command V,
czyli wklejamy to co mamy w schowku i wybieramy pierwszy komponent dostępny.
Ważne jest to, żeby nie mieć myszki gdzieś tutaj w tej okolicy.
Jeśli np.
będę miał myszkę tutaj wybiorę Command E i teraz Command V to zamiast to co wkleiłem
czyli Basic 2 zostanie zaznaczony input Basic icon left bo to jest aktualnie pod
myszką i jak wcisnę enter return to wtedy wstawi się nie ten symbol.
Chodzi o ten symbol który jest w samej górze.
Więc albo zjedź myszką z tego obszaru gdzieś na lewo czy na prawo,
albo po prostu pamiętaj żeby wybrać pierwszy element z listy.
I teraz to jest dokładnie ten pricing,
który chciałbym z którego chciałbym skorzystać.
No i teraz w tym pricing bloku mamy
zieloną obwódkę informację o tym, że jest to komponent.
Nie mamy żadnych warstw dostępnych.
Jest on na zielono podświetlony w nawigatora.
To znaczy, że ten komponent moglibyśmy edytować dopiero po wejściu do środka,
czyli kliknięciu dwa razy albo kliknięciu na tą ikonkę z ołówkiem.
I teraz jesteśmy wewnątrz instancji tego komponentu.
Zmiany, które wykonamy tutaj, będą bezpośrednio wpływały na cały komponent i
będą zmieniały nam też ten komponent w naszej dokumentacji.
Po opublikowaniu, czyli jeśli edytuję
komponent, wchodzę do środka i edytuję go tutaj i np.
tzn. ten kawałek body tekstu, następnie usunę
go stąd i teraz przejdę z powrotem do instancji.
Oczywiście zniknął ten tekst stąd, ale gdybym chciał do tej samej strony dodać
ten sam komponent Pricing Basic 2, to w tym komponencie również został usunięty.
Więc alternatywna metoda do wykonywania takich zmian, które ja teraz cofnę,
jest to, abyśmy wcześniej niszczyli powiązanie z takim master komponentem.
Czyli prawym przyciskiem myszy klikamy w
dowolnym miejscu na tą instancję komponentu i wybieramy polecenie and link
instance czyli od linkow dajemy to z instancji.
W tym momencie utraciliśmy powiązanie z
tym głównym komponentem, więc zmiana którą wykonał bym polegająca na po prostu
usunięciu tego tekstu nie dałaby nam rezultatu.
W przypadku wklejenia jeszcze raz tego
back pressingu, jakby nie dałaby nam rezultatu tutaj.
On tutaj dalej jest, więc w zależności czy chcemy zmodyfikować komponent tak, aby
wszystkie jego instancje w przyszłości zachowywały tą zmianę, którą zrobisz, czy
też modyfikować tylko jeden konkretny element na swojej stronie.
Będziesz albo robił to wewnątrz tego zielonego komponentu i nie od niego bywał,
albo jeśli chcesz zrobić zmianę lokalnie w jednym miejscu, będziesz najpierw prawym
przyciskiem od niego bywał, a później dopiero dokonywał zmian.
I to jest jedna z najważniejszych rzeczy,
jeśli chodzi o pracę z komponentami System flow.
Na ogół trzeba je po prostu od linkować.
I to jest taka metoda mojej pracy,
że po tym, jak już umieszczę szereg komponentów na scenie, to po prostu
wszystkie od linkow i mogę już z nimi wygodnie pracować.
To, że od nich chowaliśmy taki komponent nie do końca oznacza i cofnę na chwilę to,
żebyśmy jeszcze zobaczyli ten oryginalny pricing Meeting 2.
Nie do końca.
To oznacza, że wszystkie operacje, które wykonamy wewnątrz takiego od linkowane
instancji nie będą miały wpływu na ten komponent.
Oczywiście jest to związane z klasami CSS, których tutaj używamy.
Przykładowo, jeśli klikniemy na nagłówek
tutaj mamy hebel i on jest oznaczony jako Healing L, czyli jeśli wejdziemy do
pressingu stąd go chcieliśmy, to też oczywiście jest klasa Helsing L.
W związku z tym modyfikując tą klasę czy
to tutaj czy tutaj, ona i tak będzie miała zastosowanie.
Przykładowo, jeśli byśmy teraz weszli sobie do tej klasy healing L, to jest jej
deklaracja, następnie zmienili kolor czy napisali kolor np.
na kolor niebieski, no to zmieni się to też w master komponencie.
Ale nie jest to już cecha tego, że ten
element jest z nim powiązany na zasadzie instancji, bo nie jest.
Jest to cecha tego, że edytujemy po prostu
konkretną klasę having l, która to występuje też w tym komponencie.
Dlatego właśnie podlinkowanie nie niesie
ze sobą takich szerszych konsekwencji w kontekście frameworka.
Na ogół od linkowanie jest potrzebne, bo chcemy po prostu zmienić.
I zmienić teksty, jakieś elementy usunąć i
nie będzie to wpływało na żadne inne rzeczy.
Natomiast jeśli zmieniamy modyfikujemy klasę np.
tak poważną klasę jak nasz kolor timer 60
i decydujemy się wprowadzić tutaj zmiany, to naturalnie, ponieważ ten kolor Primary
60 jest zastosowany i tu, i tu, i także tu, i tu i tu.
Ono to zmieni się wszędzie, w całym naszym frameworku.
Mam nadzieję teraz, że to rozumiesz i jeśli pracowałeś wcześniej z CSM to to
jest taka naturalna konsekwencja tego, że stosujemy po prostu te same klasy.
Można więc powiedzieć, że jeśli pracujemy na gotowych klasach i modyfikujemy rzeczy,
które znajdują się w prawym panelu, czyli wszystkie właściwości CSS, to tak naprawdę
będą one dziedziczone na przestrzeni komponentów.
Nieważne, czy mamy podpiętą instancję, czy nie mamy podpiętej instancji.
Natomiast to, że mamy podpiętą instancję i
korzystamy z tego zielonego elementu zielonego komponentu
determinuje nam to, że będziemy dokonywać w nim zmian, takich jak np.
te zmiany w HTML u, czyli usunięcie
jakiegoś kawałka treści, bądź też modyfikacja tej treści, zmiana tekstu.
Te wszystkie zmiany będą istotne tylko
wtedy, jeśli mamy komponent nie od linkowany.
Istnieją też pewne wyjątki od tej reguły od linkowania, które polegają na tym, że
szereg naszych komponentów ma przypisany tzw.
override. Jeśli przykładowo skorzystałbym z
przycisku, czyli wybierzmy zwykły button, to razem z tym betonem mam pewne
możliwości jego konfiguracji bez konieczności podlinkowania go od symbolu.
Takie linkowanie byłoby bezpieczne,
ponieważ wewnątrz button u znajdują się klasy, więc jeśli ja zmodyfikował bym
tę klasę to i tak wszystkie buttony mi się oczywiście zmienią.
Czy są podlinkowane czy nie są
podlinkowane, ale czasem nie muszę wykonywać tej dodatkowej akcji i jeśli
przykładowo tylko chcę zmienić tekst na betonie np.
na gołe, to mogę zrobić to z pomocą tak zwanego override.
Szereg naszych komponentów ma przypisane override.
Można je też znaleźć w tej zakładce Settings i tutaj.
W override ach mamy np.
wystawiony link, czyli możemy zmienić typ
linku do jakiego kieruje ten przycisk i możemy zmienić jego tekst.
Jeżeli chcielibyśmy ingerować głębiej we właściwości tego przycisku, oczywiście
prawy przycisk myszy od linkował i możemy to robić.
Tak jak wspomniałem,
to że mamy od linkowany przycisk nie znaczy, że jak zmienimy inny przycisk on
też się nie zmieni jeśli chodzi o kolory czy zaokrąglenie, dlatego że korzystamy
tutaj ze spójnych class, czyli button medium.
To jest taki drugi zawór bezpieczeństwa, którego używamy.
Natomiast te podstawowe rzeczy są również dostępne w postaci over raidów.
Jeszcze jeden przykład, który mogę tutaj wrzucić to avatar.
Jeśli wybierzemy avatar np.
taki, to zobacz, że mamy możliwość od razu, bez od linkowania, zmiany obrazka do
tego avatara, a także przypisania innego tekstu np.
John Doe.
I mamy teksty 2 tablice i auto też możemy
zmienić i nie musimy od linkować aby te rzeczy zmienić.
Po prostu zrobiliśmy to tak, aby było szybciej i abyśmy mogli to robić.
Override ani musieli każdego elementu od linkować.
Teraz ostatnia rzecz, o której chciałbym powiedzieć Ci w tej lekcji.
Jeśli przejdziesz do bardziej złożonych komponentów np.
do bara, to okaże się, że taki nasz bar może zawierać tzw.
needed components, czyli komponenty, które są zagnieżdżone jedna w drugiej.
Mamy tutaj nasz Bar Lite 1 i to jest jeden
komponent, ale gdy wejdę do niego do środka, okazuje się, że w środku posiada
on jeszcze jeden komponent, czyli Brand Logo.
I teraz jestem na Bar Lite 1, ale mogę
wejść do edycji Brand Logo i tutaj edytować logo.
Dlaczego to jest istotne?
Dlatego, że w tym momencie mogę zmienić sobie logo na przestrzeni całego systemu,
czyli wszędzie tam, gdzie ten komponent jest użyty.
I tu akurat chciałbym skorzystać z wnętrza
tego komponentu Brand Logo i nie od linkować go, a także nie korzystać z
override, ponieważ override, który można zrobić na tym logo jest oczywiście
możliwe, natomiast zrobił go tylko do tej konkretnej instancji.
Tak działają override, że robimy je tylko
do jednej instancji i logo nie zmieniło się w innych barach.
Natomiast jeśli wejdę do środka i edytuję ten konkretny komponent,
czyli przejdę do jego pola Image, a następnie to tutaj podmienię w środku logo
na inną wersję, to zobaczę, że teraz zostało zmienione
wszędzie w tym miejscu, tutaj we wszystkich barach, futrach.
W związku z tym jest to fajna koncepcja, która pozwala nam mieszając komponenty
uzyskać właśnie taki efekt, a w przypadku logo akurat nie moglibyśmy zrobić tego
inaczej, ponieważ logo jest zwykłym obrazkiem.
Nie jest np.
poskładane w CSS tak aby dało się podmienić klasy.
Więc tutaj należy właśnie posłużyć się koncepcją zagnieżdżonych komponentów.
Jeśli nawet skorzystałbym z baru i od
linkował ten nasz bar po to, żeby go zmienić, to nadal miałbyś w środku
komponent z logo, którego nie warto zmieniać.
Czyli nie warto go od linkować, bo on będzie trzymał referencję do dowolnego
logo, które w każdej chwili możesz podmienić.
To wszystko o komponentach oraz o ich od linkowaniu.
Mam nadzieję, że to zapamiętałeś, bo to ważna lekcja o system flow.
Do usłyszenia już za.