od Podstaw
6 godz. 34 min · Bubble · Full-stack i Programowanie
Krzysiek PiekarzAutomation Specialist / No-code DeveloperZapomnij o ręcznym pisaniu kodu i żmudnym tworzeniu stron www lub aplikacji! Wykorzystując przejrzysty edytor Bubble będziemy w stanie rozpocząć naszą pracę od czystej kartki i wyklikać cały układ bezpośrednio w interfejsie. Dodatkowo pokażę Ci w jaki sposób można wdrożyć do projektu w pełni funkcjonalną logikę obsługi użytkowników nawet wtedy, gdy nie posiadasz żadnej wiedzy programistycznej. A to wszystko w niemal ekspresowym tempie i bez zbędnych konfiguracji, które bywają zmorą programistów.
Edytor zapewnia spójny i intuicyjny interfejs, dzięki któremu stworzenie nawet skomplikowanej aplikacji staje się wyjątkowo proste. Dodatkowo wbudowana baza danych sprawia, że nie musimy korzystać z żadnych zewnętrznych rozwiązań a zarządzanie nią jest na tyle intuicyjne, że poradzi sobie z tym nawet niedoświadczony użytkownik. Kolejną zaletą jest dostęp do ogromnej biblioteki pluginów, dzięki którym będziemy mogli wzbogacić naszą aplikację o obsługę płatności, analitykę, SEO i wiele więcej.
Niemal wszystko, z wykorzystaniem Bubble bezproblemowo stworzymy klony takich serwisów jak: Twitter, Asana, Todoist, AirBnB, Trip Advisor lub Yelp. Edytor pozwala stworzyć w pełni funkcjonalną aplikację w ciągu nawet kilku dni! Dzięki temu nie będziemy musieli przepalać naszego budżetu na zewnętrzne software house, którym wdrożenie podobnych rozwiązań może zająć tygodnie pracy.
W tym kursie skupimy się na podstawach pracy z edytorem, tak aby korzystanie z niego stało się dla Ciebie naturalne. Wykorzystamy w praktyce zakładkę Design, która jest odpowiedzialna za front-end naszej strony oraz zapoznamy się z działaniem workflows, które "tchną życie" w nasz projekt. Efektem naszej pracy będzie nowoczesny landing page oraz w pełni funkcjonalna strona logowania/rejestracji. Dodatkowo zadbamy również o to, by całość była w pełni responsywna i dobrze prezentowała się zarówno na ekranach desktopowych, jak i urządzeniach mobilnych.
Jedną z zalet edytora Bubble jest to, że nie stanowi on hermetycznego środowiska, w którym jesteśmy skazani na korzystanie jedynie z rozwiązań zaprojektowanych przez jego twórców. To niesamowicie funkcjonalna platforma, którą w prosty sposób możemy połączyć również z zewnętrznymi usługami wykorzystując gotowe pluginy. Pokażę Ci w jaki sposób możemy zaimplementować do naszego projektu opcję logowania i rejestracji z wykorzystaniem Google, tak, aby użytkownik mógł utworzyć konto w naszym serwisie za pomocą jednego kliknięcia. A kolejnym bonusem będzie przesyłanie adresów e-mail z formularza zapisu na newsletter bezpośrednio do bazy w Airtable!
Ten kurs powstał z myślą o osobach, które chcą poznać edytor Bubble i nowy kierunek rozwoju aplikacji no-code. Będzie również doskonałym punktem startowym dla tych wszystkich, którzy nie posiadają żadnej wiedzy programistycznej ale nadal chcą tworzyć w pełni funkcjonalne serwisy i strony internetowe. Poziom kursu został dopasowany zarówno do osób, które do tej pory nie korzystały z Bubble, jak i tych, którzy posiadają już przynajmniej podstawowe doświadczenie w tym zakresie. Dzięki zdobytej w nim wiedzy będziesz mógł postawić pierwszy krok na drodze, która pozwoli Ci przekuć Twój pomysł w działający startup.
Kontynuujemy naszą przygodę z workflows w Bubble, a ponieważ w tej lekcji czeka nas
sporo pracy, to omówmy sobie pokrótce, jakie zadania przed nami stoją.
W pierwszej kolejności będziemy musieli utworzyć odpowiednią nawigację mobilną,
którą będziemy pokazywać użytkownikom przy określonej szerokości ekranu.
Dodatkowo będziemy musieli dodać
odpowiedni workflows, który za pomocą kliknięcia w ikonę
menu icon będzie taką nawigację pokazywał bądź ukrywał, a dodatkowo wszystkie linki
w takiej nawigacji mobilnej będą musiały zachowywać się
dokładnie w taki sam sposób jak te tutaj w nawigacji desktopowej.
Skoro wiemy już co mamy zrobić, to przystąpimy do pracy.
Ikonkę tutaj utworzyliśmy wcześniej, jak pamiętasz.
Ponieważ jest ona pokazywana tylko przy szerokości ekranu poniżej 960 pixeli,
to żeby nie przełączać się tutaj w podglądzie co chwilę w odpowiednią
rozdzielczość, musimy zastosować pewną sztuczkę.
W tym celu zaznaczam sobie tutaj całą grupę na nav-links.
Chcę ją ukrywać przy załadowaniu strony.
Kolejno przechodzę do grupy menu icon i tą z kolei chcę pokazywać. W ten sposób
jeżeli teraz odświeżamy sobie stronę, to jak się domyślasz.
Nawigacja desktopowa nam zniknęła, a pojawiła nam
się ikonka, więc dużo łatwiej będzie nam z tym teraz pracować.
To co musimy jeszcze zrobić, żeby nam
tutaj ta nawigacja desktopowa nie przeszkadzała, to ukryć ją.
Aby to zrobić wystarczy, że kliknę tutaj przy grupie nav-links w tą ikonkę oczka.
Teraz mamy już
sporo miejsca do pracy, a więc przystąpmy do działania.
W pierwszej kolejności musimy utworzyć naszą mobilną nawigację.
W tym celu wybieram tutaj element group focus.
Klikam gdziekolwiek na ekranie w edytorze.
Jak widzisz grupa została dodana, natomiast działa ona w ten sposób,
że jest pozycjonowana względem jakiegoś pewnego elementu referencyjnego.
Jak to działa? Już Ci pokazuję.
Muszę go tutaj wskazać.
W moim przypadku jest to po prostu grupa menu icon.
Jak widzisz teraz grupa focus została
tutaj odpowiednio wypozycjonowana względem tego elementu.
Znajduje się poniżej niego i jest wyrównana do niego
tutaj lewą krawędzią.
Skoro to mamy gotowe, to przystąpimy teraz do odpowiedniej
edycji takiej grupy, nazwijmy ją sobie menu mobile.
Nadajmy jej tutaj jakieś określone style, czyli usuńmy ten domyślny.
Zmieńmy kolor na biały.
Zaokrąglenia rogów to 16 pixeli
i cień jest już Ci doskonale znany, czyli 0816.
Nasz kolor middle i przezroczystość równa 15%.
Teraz musimy jeszcze tutaj tylko zmienić oczywiście layout.
Naszym przypadku jak się domyślasz będzie to column.
Na razie zostawmy stało szerokość i tutaj tą minimalną wysokość.
To co musimy teraz zrobić to powstawiać tutaj odpowiednie linki.
Mogę więc na chwilkę tylko, odkryć sobie tą grupę nav-links.
Zaznaczyć jeden ten tekst.
Skopiować.
I wstawić go tutaj do grupę focus.
Oczywiście chcemy aby te linki były tutaj
wyśrodkowane, w moim przypadku pierwszy link będzie odsunięty od góry o 30 pixeli.
Teraz mogę go zaznaczyć, skopiować i wstawić odpowiednie ilości.
Mamy tutaj about, features, będzie to pricing, contact, sing in
oraz sign out.
Teraz zadbajmy oczywiście o odpowiednie teksty.
Tutaj będzie to feauters.
Margines u góry zmieńmy na 15 pixeli.
Tutaj tekst to pricing.
Margines
15 pixeli.
W tym przypadku będzie to text contact, znów margines 15 pixeli.
Tutaj sign in.
15 pixeli od góry.
I w tym przypadku sign up, tu margines
u góry to 15 pixeli, a margines na dole
jak się domyślasz, będzie równe 30 pixeli.
Dodatkowo dodaje tu sign up, chce od razu
tutaj zmienić kolor z tego ciemnego na znany już kolor primary.
Tak aby to się tu wyróżniało.
Dodatkowo nasza grupa moim zdaniem jest chyba trochę za szeroka.
Zmieńmy ją może na 220 pixeli.
Teraz już jest zdecydowanie lepiej.
Natomiast jest źle wypozycjonowana, aby ją przesunąć tutaj w lewo.
Wystarczy, że wybiorę zakładkę appearance.
I mam tutaj coś takiego jak lewy offset.
Muszę ustawić ujemną wartość.
Zastanówmy się, jaka tutaj wartość powinna być, cała ta grupa
tutaj grupa menu.
Ma szerokość 44 pixele, ta ma 220, a więc odejmijmy sobie 220
minus 44 daje nam 176 pixeli, a więc ustawmy ten offset
na -176 pixeli i zobacz, że teraz jest to
tutaj odpowiednio wyrównane, tym razem do prawej krawędzi, a więc tak jak chciałem.
Natomiast podejrzyjmy teraz jak to wygląda w projekcie gotowym.
Okazuje się, że nasza grupa focus się nie pojawia.
Dlaczego tak się dzieje?
Otóż z bardzo prostego powodu grupa focus domyślnie jest ukryta.
Musimy więc stworzyć odpowiedni workflows, który będzie ją pokazywał.
Mam nadzieję, że już wiesz jak to zrobić.
W tym przypadku
elementem, czyli takim naszym trigger'em będzie nie cała grupa menu icon, ale ta ikonka
iconify.
W tym przypadku musimy najpierw zaznaczyć tą opcję is clickabel.
Żeby po najechaniu na nią pojawiał się nam ta ikonka łapki, a następnie klikamy tutaj prawy
przycisk myszki wybieramy start edit workflow.
I teraz jak widzisz tutaj trigger został utworzony.
To co chcemy zrobić?
W tym przypadku chcemy pokazywać jakiś element, a skoro odnosimy się do elementu,
to jak się domyślasz przenosimy się do tej sekcji i mamy tutaj opcja show.
Wybieramy grupę focus, czyli naszą grupę menu mobile.
Przejdźmy do podglądu.
Zerknijmy czy to działa.
Najeżdżam, klikam.
No jak widzisz, tutaj nasza
nawigacja mobilna pojawia się tak, jak pojawiać się powinna.
Natomiast grupa focus ma jedno specyficzne zachowanie.
Otóż żeby ją ukryć musimy kliknąć gdzieś poza,
poza tą grupę, gdziekolwiek tutaj na ekranie, jak widzisz została teraz ukryta.
Natomiast jeżeli kliknąłbym tutaj w ikonkę, żeby nam się ta grupa pojawiła
i kliknął ją ponownie, to jak widzisz grupa nie została ukryta.
No niestety nie jest to zachowanie, na którym nam zależy.
Użytkownicy przyzwyczajeni są do tego, że
jeżeli klikają w ikonkę menu raz, to takie menu się pojawia.
Jeżeli klikają drugi raz, to takie menu się ukrywa.
Tak więc jak tutaj zastosować takie zachowania i wprowadzić je w życie?
Bardzo prosto.
Wracamy do edytora i zamiast opcji show będziemy musieli wykorzystać inną.
Aby usunąć tutaj ten krąg, wystarczy, że kliknę ten przycisk tutaj delete.
Przychodzę tutaj do listy i tym razem nie wybieram show,
ale tutaj taggle.
I znowu muszę wskazać naszą grupę
menu mobile.
Toggle działa w ten sposób, że pokazuję element jeżeli jest on ukryty i ukrywa go,
jeżeli jest już widoczny.
A więc tym razem to wszystko powinno działać tak jak trzeba.
Najeżdżam na ikonę klikam raz, menu się pojawia.
Klikam w ikonkę drugi raz, menu się ukrywa.
A więc mamy dokładnie takie zachowanie, na jakim nam zależało.
Więc skoro nasze menu już się wyświetla poprawnie, to zadbajmy teraz o to, aby te
linki kierowały użytkownika we właściwe miejsce.
A więc wracamy do edytora.
Wracamy do designu.
Jak widzisz ta grupa czasami przeskakuje tutaj ten lewy górny róg, ale nie przejmuj się,
na podglądzie strony będzie pojawiać się we właściwym miejscu.
Jak się domyślasz, musimy teraz tutaj dodać workflows do wszystkich tych linków
i odpowiednio zdefiniować, klikam więc na text about,
started edit workflow.
Oczywiście znane ci już scroll to.
Sekcja about.
W tym przypadku oczywiście jest to grupa about.
Ok, przejdźmy do podglądu.
Sprawdźmy, czy to zadziała.
Otwieramy nasze menu, klikam na link,
zostałem przekierowany, ale zobacz co się dzieje, jeżeli wrócę na górę.
Nasza grupa menu nadal jest tutaj widoczna.
To menu mobilne.
Musimy więc zadbać o to, aby po kliknięciu i przescrollowaniu użytkownika do
odpowiedniej sekcji, zamknąć tutaj tą naszą mobilną nawigację.
W tym celu wracamy do edytora i dodajemy kolejną operację.
Jak się domyślasz, skoro chcemy ukryć
jakiś element, to przechodzimy tutaj do element actions i wybieramy hide.
To co chcemy ukrywać to oczywiście nasze
mobilne menu i teraz już wszystko będzie działało tak jak trzeba.
Klikamy w link, scrollujemy użytkownika do właściwej sekcji,
a przy okazji od razu ukrywamy nasze mobilne menu.
Sprawdźmy to więc w praktyce.
Otwieram nawigacja, klikam,
zostałem przescrollowany.
A jeśli wrócę,
to jak widzisz, menu zostało ukryte.
Natomiast teraz pojawia nam się tutaj pewien problem.
Mamy tutaj text about is clicked i znowu text about
is clicked.
Ponieważ oba te teksty noszą dokładnie taką samą nazwę, text about
i tutaj też mamy text about.
W jaki więc sposób rozróżnić sobie to workflows?
Są na to dwa sposoby.
Moglibyśmy nadać oczywiście tutaj inne nazwy i np.
tutaj powiedzieć, że to jest text desktop about.
A to z kolei jest, mobile about, ok.
I wtedy, jeśli wrócę teraz do workflow,
to jak widzisz, tutaj te nazwy odpowiednio mi się pozmieniały.
Teraz wiem, że to dotyczy nawigacji desktopowej.
To dotyczy nawigacji mobilnej.
Natomiast ja z reguły nie robię tego w ten sposób.
Pokażę Ci mój sposób.
Cofnijmy więc te zmiany.
Mamy tutaj znowu te standardowe nazwy.
Teraz wracamy do workflow.
I tutaj mogę sobie zdefiniować
odpowiedni folder, w którym będą takie workflows umieszczone.
Na chwilę obecną nie mamy żadnego
klikam więc create a new folder nazwijmy go desktop menu.
Klikam ok i teraz.
Ten workflow został przeniesiony do tego folderu.
Na chwilę obecną wyświetlają się one wszystkie więc
się może zastanawiać, gdzie to w zasadzie zostało przeniesione.
Aby wyświetlić te foldery klikam tutaj pojawia mi się ikonka rączki.
I teraz jak widzisz mam tutaj wszystkie
workflows, ale mam również te, które dotyczą tylko desktop menu.
Na chwilę obecną jest to tylko ten.
Mam tutaj również
zakładkę taką no folder assigned, czyli te, które nie są przydzielone do żadnego.
A więc teraz zadbajmy o to, aby je odpowiednio po przydzielać.
Usuńmy ten kolor, przywróćmy kolor szary
i całą naszą desktopową nawigację przenieśmy do właściwego folderu.
Czyli wybieram go tutaj z listy.
Jak widzisz, teraz zostało to odpowiednio przeniesione.
Mogę teraz kliknąć aboute all workflows
albo po prostu, żeby mi było łatwiej to no folder assigned.
Teraz klikam tutaj i oczywiście przenoszę
do odpowiedniego menu, odpowiedniego folderu
oczywiście.
Text pricing, desktop menu.
text sign in, desktop menu i oczywiście text sign up, desktop menu.
Teraz cała moja mobilna nawigacja jest już w jednym folderze.
Tu mogę też usunąć ten kolor.
Jak widzisz teraz mamy to wszystko pogrupowane w odpowiedni folder.
I to samo możemy zrobić teraz
dla tych workflows oraz to klikam na text about tworzę nowy folder.
Tym razem jak się domyślasz będzie to mobile menu.
I to samo robię tutaj
dla tej ikonki, przenoszę ją do mobile menu.
I oczywiście musimy teraz zadbać o to,
aby to właściwe worflows dodać do tych linków.
Natomiast skoro już wiesz jak to robić, to
mam nadzieję, że poradzisz sobie z tym bez problemu i będzie to
oczywiście, jak się domyślasz Twoja praca domowa.
To co na koniec musimy jeszcze zrobić, to
oczywiście przywrócić tutaj właściwe działania.
Czyli jeżeli poustawiasz te wszystkie linki
tak jak działać powinny, to przejdź do grupy nav-links.
Zaznacz tą opcję, aby pokazywać ją przy
załadowaniu strony i pamiętaj o tym, aby do grupy menu icon ją odznaczyć.
Wtedy wszystko tutaj będzie działało tak jak działać powinno.
Dziękuję Ci za uwagę i widzimy się już za chwilę.