Front-end development stron i systemów internetowych

Wdrażamy projekty UX/UI jako działające interfejsy stron i systemów. Budujemy je z powtarzalnych komponentów, dbając o responsywność, dostępność i późniejszy rozwój serwisu.

Nasi Klienci

Grupa Azoty
Elemental Batteries
Lupek.pl
Muzeum Sztuki w Łodzi
Muzeum Śląska Opolskiego w Opolu
PARP
Volen S.A.
Front-end Development

Budowy frontendu nie zaczynamy od kodowania

Zanim powstanie pierwszy komponent, sprawdzamy projekt, sposób działania serwisu i dane, z którymi będzie pracował. Dzięki temu część problemów wychwytujemy jeszcze przed developmentem, zamiast odkrywać je dopiero podczas kodowania lub testów.

01.

Najpierw sprawdzamy projekt od strony technicznej

Makiety pokazują wygląd i podstawowe zachowanie interfejsu, ale nie zawsze wszystkie sytuacje, które pojawią się później w działającym serwisie.

Sprawdzamy więc m.in. zachowanie elementów na różnych szerokościach ekranu, dłuższe treści, wersje językowe, stany formularzy, brak danych czy sposób działania elementów interaktywnych.

Jeżeli UX/UI powstaje w CG2, frontend konsultujemy z projektantami jeszcze przed rozpoczęciem kodowania. Jeżeli dostajemy gotowy projekt od klienta lub innego zespołu, wskazujemy miejsca, które wymagają doprecyzowania.

02.

Układamy frontend z komponentów

Nie kodujemy każdej podstrony jako osobnego widoku. Projekt dzielimy na elementy, które będą wielokrotnie wykorzystywane w serwisie: karty, teasery, galerie, formularze, nagłówki, listy czy bardziej rozbudowane sekcje.

Korzystamy przy tym z podejścia znanego z Atomic Design. Komponent ma określone warianty i zasady działania, dzięki czemu może być używany w różnych miejscach bez ponownego projektowania i pisania tego samego kodu.

Przy większych serwisach ma to znaczenie również kilka lat po uruchomieniu. Nowe podstrony i funkcje można budować na elementach, które już istnieją i zostały wcześniej sprawdzone.

03.

Ten sam system komponentów przenosimy do Drupala

Na frontendzie się to nie kończy. Przy wdrożeniach w Drupalu przygotowujemy CMS tak, żeby redaktor mógł korzystać z przygotowanych komponentów podczas tworzenia kolejnych stron.

Element zaprojektowany w Figmie ma więc swój odpowiednik we frontendzie i sposób obsługi w CMS-ie. Redaktor może z dostępnych elementów układać całe widoki, łącząc np. sekcje tekstowe, galerie, listy, teasery, formularze czy komponenty przygotowane specjalnie dla danego projektu.

Nie oznacza to pełnej dowolności. Określamy warianty i zasady użycia komponentów tak, żeby nowe podstrony pozostawały spójne z projektem i identyfikacją wizualną serwisu.

W praktyce tworzymy więc jeden ciąg:

  1. projekt UX/UI,
  2. komponent frontendu,
  3. komponent w Drupalu, 
  4. podstrona budowana przez redaktora.
04.

Dostępność powstaje razem z frontendem

Semantyczny HTML, obsługa klawiaturą, focus, formularze czy sposób działania elementów interaktywnych wynikają bezpośrednio z kodu frontendu.

Dlatego dostępności cyfrowej nie traktujemy jako zestawu poprawek wykonywanych po zakończeniu developmentu. Uwzględniamy ją podczas budowania poszczególnych komponentów i sprawdzamy ich działanie w trakcie prac.

05.

Testujemy już podczas kodowania

Nie czekamy z testami do momentu, kiedy cały frontend jest gotowy. Poszczególne komponenty sprawdzamy na bieżąco podczas developmentu.

Korzystamy również z narzędzi wspieranych przez AI i testów automatycznych, które pomagają wychwytywać problemy z kodem, responsywnością, kompatybilnością oraz działaniem komponentów w różnych przeglądarkach. Dzięki temu część błędów poprawiamy od razu, zanim trafią do kolejnych etapów projektu.

Automatyzacja i AI wspierają pracę developera, ale nie zastępują sprawdzenia rzeczywistego zachowania interfejsu.

06.

Sprawdzamy komponenty na prawdziwych treściach

Idealnie przygotowany tekst i zdjęcie z projektu nie pokazują, jak serwis będzie wyglądał po kilku miesiącach pracy redakcji.

Dlatego sprawdzamy komponenty także z dłuższymi tytułami, brakującymi zdjęciami, różną liczbą elementów, innymi proporcjami grafik czy treścią w kolejnych wersjach językowych.

Frontend powinien działać przewidywalnie nie tylko w dniu uruchomienia, ale również wtedy, gdy serwis jest później intensywnie rozwijany.

Możemy zająć się samym frontendem

Nie każdy projekt musi zaczynać się w CG2 od UX/UI. Możemy dołączyć do prac na etapie developmentu i wdrożyć projekt przygotowany przez zespół klienta albo inną agencję.

Przed rozpoczęciem kodowania sprawdzamy projekt pod kątem kompletności i możliwości technicznego wdrożenia. Jeżeli brakuje stanów komponentów, wersji responsywnych albo informacji o ich zachowaniu, ustalamy je przed rozpoczęciem prac.

Możemy odpowiadać za sam frontend albo pracować razem z zespołem backendowym klienta.

Technologie, z których korzystamy

Najczęściej budujemy frontend serwisów opartych na Drupalu. Łączymy standardowe technologie webowe z mechanizmami CMS, tak żeby komponent widoczny na stronie miał swoje logiczne odwzorowanie w kodzie i panelu redakcyjnym.

Nie dokładamy technologii tylko dlatego, że są popularne. Stack dobieramy do potrzeb projektu, jego architektury i sposobu, w jaki serwis będzie później rozwijany.

Frontend
HTML5 · CSS3 · SCSS / Sass · JavaScript · AJAX

Drupal i integracja z CMS
Twig · Drupal Theme API · Drupal Render API · Drupal behaviors · Paragraphs · PHP