Una aplicació de pàgina única (SPA acrònim en anglès) és una aplicació web o lloc web que es pot encabir en una sola pàgina web amb l'objectiu d'aconseguir una interfície d'usuari semblant a les aplicacions clàssiques de PC. En una SPA la càrrega es realitza d'un sol cop encara que hi poden haver actualitzacions dinàmiques com a resposta de les accions de l'usuari.[1][2]
Major velocitat de càrrega i menor amplada de banda utilitzat, ja que només es carrega un sol cop a l'inici i no hi ha continus refrescos de pàgina tot enviant codi HTML. Qualsevol acció de l'usuari només genera la transmissió de la mínima quantitat de dades.
Major facilitat a l'hora de realitzar el desplegament al servidor en producció, ja que només són necessaris 3 arxius estàtics : un arxiu index.html, un arxiu (bundle) CSS i un derrer arxiu (bundle) Javascript/Ajax. També és més fàcil de versionar i per tant de tenir una traçabilitat de manteniment.
Inconvenients :
Fins darrerament els motors de recerca com Google search engine tenien problemes a l'hora d'indexar llocs web SPA amb arxius Javascript/Ajax, però actualment hi ha entorns com per exemple AngularJS que solucionen aquest problema.
Implementacions tècniques
Hi ha diverses tècniques disponibles que permeten els navegadors de visualitzar SPA :
Ajax (JavaScript asíncron i XML) : conjunt de tecnologies que permeten actualitzar continguts web sense haver de tornar a carregar la pàgina. Això obre la porta a pàgines web interactives.
WebSockets és una tecnologia de comunicacions bidireccional client-servidor que també forma part de l'especificació HTML5, superior a Ajax en termes de prestacions i simplicitat.