Una PWA (Progressive Web App, o Aplicación Web Progresiva) es un tipo de software de aplicación que se entrega a través de la web, pero que ofrece una experiencia de usuario casi idéntica a la de una aplicación nativa de iOS o Android.
En esencia, es un sitio web «con superpoderes»: utiliza tecnologías modernas del navegador para permitir que el usuario la instale en su pantalla de inicio, reciba notificaciones push y, lo más importante, funcione perfectamente sin conexión a internet o en redes muy lentas.
¿Qué hace que una web sea «Progresiva»?
Para que un proyecto se considere una PWA, debe cumplir tres requisitos técnicos clave:
- Service Workers: Un script que corre en segundo plano y se encarga de gestionar el «cacheo» de archivos y las notificaciones. Es el motor que permite la velocidad instantánea y el modo offline.
- Manifiesto (Web App Manifest): Un archivo JSON que le dice al dispositivo cómo debe verse la app (icono, colores de marca, orientación de pantalla) cuando se instala.
- HTTPS: Por seguridad y para que los Service Workers funcionen, la conexión debe ser cifrada obligatoriamente.
PWA vs. App Nativa vs. Web Tradicional
| Característica | Web Tradicional | PWA | App Nativa |
| Instalable | No | Sí (sin pasar por la Store) | Sí (App Store / Play Store) |
| Modo Offline | No | Sí | Sí |
| Notificaciones Push | Limitado | Sí (en casi todos los SO) | Sí |
| Coste de Desarrollo | Bajo | Medio (un solo código) | Alto (código por plataforma) |
| Acceso a Hardware | Muy limitado | Alto (Cámara, GPS, Bluetooth) | Total |