Frontend softwarového programu nebo webové stránky je vše, s čím uživatel komunikuje. Z uživatelského hlediska je frontend synonymem pro uživatelské rozhraní. Z pohledu vývojáře se jedná o návrh rozhraní a programování, které zajišťuje jeho funkčnost. Naopak backend zahrnuje funkce a zpracování dat, které probíhají v zákulisí.
Jedním z hlavních cílů vývoje frontendu je vytvořit bezproblémové uživatelské prostředí. Jinými slovy, frontend aplikace nebo webové stránky by měl být intuitivní a snadno použitelný pro uživatele. I když to zní jako jednoduchý cíl, může být překvapivě složitý, protože ne všichni uživatelé či zařízení jsou stejní.
Například aplikace vyvinutá pro mobilní zařízení vyžaduje výrazně odlišný frontend než aplikace pro stolní počítače. Webové stránky musí dobře fungovat na více zařízeních a při různých velikostech obrazovky, proto moderní vývoj webových stránek obvykle zahrnuje responzivní design.
Mezi příklady prvků frontendu patří rozvržení aplikace nebo stránky, grafika, zvukové a video prvky, textový obsah, prvky uživatelského rozhraní (tlačítka, odkazy, panely nástrojů, navigační lišty atd.), vstupní oblasti (dialogová okna), formulářová pole, textové oblasti atd.), user flow (jak jedno rozhraní vede k dalšímu), uživatelské preference, motivy a přizpůsobení.
Uživatelské vstupy jsou přijímány prostřednictvím frontendu a zpracovávány v backendu programu nebo webové stránky. Kód backendu čte a zapisuje data a odesílá výstup uživateli prostřednictvím frontendu. Vzhledem k tomu, že backend a frontend aplikace nebo webové stránky pracují společně, softwarové úlohy často vyžadují vývoj frontendu i backendu. Tomuto postupu se říká full-stack vývoj.