SPA (Single Page Application)
SPA (ang. Single Page Application) to aplikacja webowa, która ładuje się raz w przeglądarce, a następnie dynamicznie odświeża zawartość bez pełnego przeładowania strony. Zamiast pobierać od serwera nowy dokument HTML przy każdym kliknięciu, SPA aktualizuje jedynie potrzebne fragmenty interfejsu, korzystając z JavaScriptu i wywołań do API w tle.
Jak działa SPA
Przy pierwszym wejściu przeglądarka pobiera szkielet strony oraz pakiet JavaScriptu, który przejmuje kontrolę nad renderowaniem. Od tego momentu nawigacja odbywa się po stronie klienta: gdy użytkownik przechodzi między widokami, aplikacja pobiera z serwera wyłącznie dane (najczęściej w formacie JSON) i podmienia odpowiednie elementy, aktualizując też adres URL bez przeładowania. Dzięki temu interakcje są płynne i przypominają aplikację desktopową.
SPA buduje się zwykle w oparciu o frameworki takie jak React, Vue.js czy Angular. Ceną za płynność jest większy początkowy ładunek JavaScriptu oraz wyzwania związane z SEO — dlatego stosuje się renderowanie po stronie serwera (SSR) lub prerendering, aby wyszukiwarki otrzymały gotową treść.
Zastosowanie w praktyce
Model SPA sprawdza się w interfejsach o dużej interaktywności: panelach administracyjnych, kokpitach analitycznych, aplikacjach SaaS, komunikatorach i konfiguratorach produktów. Wszędzie tam, gdzie użytkownik intensywnie klika i oczekuje natychmiastowej reakcji bez migających przeładowań, SPA daje wyraźną przewagę nad klasyczną stroną wielostronicową. Do hostowania SPA wystarczy statyczny hosting serwujący pliki oraz osobne API backendowe — a wiele takich aplikacji rozszerza się później do PWA, zyskując działanie offline i instalowalność.
Powiązane pojęcia
Najczęstsze pytania
Czy SPA jest przyjazne SEO?
Domyślnie SPA renderuje treść po stronie przeglądarki, co utrudnia jej indeksowanie. Aby zapewnić dobre SEO, stosuje się renderowanie po stronie serwera (SSR), generowanie statyczne lub prerendering, dzięki czemu robot otrzymuje gotowy HTML zamiast pustego szkieletu strony.
Czym różni się SPA od PWA?
SPA opisuje architekturę renderowania — jedna strona, dynamiczne odświeżanie treści. PWA to aplikacja webowa z cechami natywnymi: działanie offline, instalacja na ekranie głównym i powiadomienia. Wiele aplikacji jest jednocześnie SPA i PWA, ale to niezależne pojęcia.
