PWA
A Progressive Web App (PWA) is a web application that uses modern browser capabilities to behave more like a native app: installable to the home screen, offline-capable, sending push notifications, and accessing hardware features through web APIs. PWAs deliver mobile-app-like experiences without app store distribution.
Core technologies
- Service Workers. Scripts that run in the background, intercept network requests, and enable offline access and push notifications.
- Web App Manifest. A JSON file describing the app: name, icons, theme colour, start URL, display mode (standalone, fullscreen).
- HTTPS. Required for service workers and most modern web APIs.
- Installability. Browsers prompt installation when the manifest and service worker meet criteria; installed PWAs appear with their own icon.
What PWAs can do
- Work offline or in poor connectivity via service-worker caches
- Receive push notifications (limited on iOS until iOS 16.4+)
- Run in fullscreen / standalone, hiding browser chrome
- Access camera, microphone, geolocation, sensors via web APIs
- Sync data in the background when connectivity returns
Tradeoffs versus native
- Pros. Single codebase across web and mobile; no app store gatekeeping; instant updates; lower distribution cost.
- Cons. Limited access to platform APIs (especially on iOS); no presence in native app stores by default; lower visibility for discovery.
🔗