Każdy ekran, którego używasz, został przez kogoś zaprojektowany: ekran główny aplikacji bankowej, pole wyszukiwania, strona ustawień. Projektowanie interfejsu użytkownika to dyscyplina, która decyduje o rozmieszczeniu tych ekranów, jak wygląda każdy element sterujący i jak reaguje po jego dotknięciu.
Projektant interfejsu użytkownika pracuje z kilkoma elementami składowymi. Układ i odstępy grupują powiązane ze sobą rzeczy. Hierarchia wizualna wyróżnia najważniejsze działanie. Typografia i kolor niosą ze sobą znaczenie i markę. Komponenty takie jak przyciski, wejścia, karty i menu są projektowane raz i wykorzystywane ponownie, dzięki czemu produkt sprawia wrażenie spójnego.
Każdy komponent ma również stany. Przycisk ma stan domyślny, najechanie, naciśnięcie, skupienie, wyłączenie i ładowanie, a każdy z nich wymaga projektu. Pomijanie stanów jest jednym z najczęstszych powodów, dla których projekt wygląda na skończony na makiecie, ale w prawdziwym produkcie sprawia wrażenie zniszczonego.
Interakcja i ruch są również częścią interfejsu użytkownika. Drobne reakcje, często nazywane mikrointerakcjami, potwierdzają, że dotknięcie zadziałało, pokazują postęp lub wyjaśniają, dokąd coś poszło. Powinny być szybkie i celowe oraz uwzględniać ustawienia systemu dotyczące ograniczenia ruchu.
Większość dzisiejszych projektów interfejsu użytkownika odbywa się w Figma, przy czym Penpot, Sketch i Lunacy są powszechnymi alternatywami. W przypadku interfejsów, które muszą reagować na rzeczywiste dane i dane wejściowe w gotowej aplikacji, projektanci korzystają również z narzędzi interaktywnych. ExodeUI, który tworzymy, jest jednym z nich: przechowuje stany, fizykę sprężyn i zdarzenia w jednym otwartym pliku, który działa w React, Vue, Svelte, Angular, Solid, React Native, SwiftUI i Flutter.