Ogni schermata che utilizzi è stata progettata da qualcuno: la schermata iniziale di un'app bancaria, una casella di ricerca, una pagina delle impostazioni. Il design dell'interfaccia utente è la disciplina che decide come sono disposti gli schermi, come appare ciascun controllo e come risponde quando lo tocchi.
Un progettista dell'interfaccia utente lavora con alcuni elementi costitutivi. Layout e spaziatura raggruppano insieme elementi correlati. La gerarchia visiva fa risaltare l'azione più importante. La tipografia e il colore portano significato e marchio. Componenti come pulsanti, ingressi, schede e menu vengono progettati una volta e riutilizzati, quindi il prodotto sembra coerente.
Ogni componente ha anche degli stati. Un pulsante ha gli stati predefinito, passaggio del mouse, premuto, attivo, disabilitato e in caricamento e ciascuno necessita di un design. Tralasciare gli stati è uno dei motivi più comuni per cui un progetto sembra finito in un modello ma sembra rotto nel prodotto reale.
Anche l'interazione e il movimento fanno parte dell'interfaccia utente. Piccole risposte, spesso chiamate microinterazioni, confermano che un tocco ha funzionato, mostrano progressi o spiegano dove è andato qualcosa. Dovrebbero essere rapidi e mirati e rispettare l'impostazione del sistema per il movimento ridotto.
La maggior parte della progettazione dell'interfaccia utente oggi avviene in Figma, con Penpot, Sketch e Lunacy come alternative comuni. Per le interfacce che devono reagire a dati reali e input nell'app finita, i progettisti utilizzano anche strumenti interattivi. ExodeUI, che creiamo, è uno: memorizza stati, fisica primaverile ed eventi in un file aperto che viene eseguito in React, Vue, Svelte, Angular, Solid, React Native, SwiftUI e Flutter.