Progressive Web Apps
Web applications using modern technologies to deliver native app-like experiences: installable, offline-capable, and with push notifications.
seed#pwa#service-worker#offline#installable#web#mobile
What it is
A Progressive Web App (PWA) is a web application using Service Workers, Web App Manifest, and other modern APIs to deliver a native app-like experience: installable on the home screen, functional offline, and with push notifications.
Characteristics
- Installable: added to home screen without app store
- Offline: works without connection (Service Worker + cache)
- Responsive: adapts to any screen
- Push notifications: notifications like native app
- Linkable: accessible via URL
Key technologies
- Service Worker: network proxy intercepting requests and managing cache
- Web App Manifest: installation metadata (name, icon, colors)
- Cache API: resource storage for offline use
- Background Sync: sync data when connection returns
PWA vs Native App
| Aspect | PWA | Native |
|---|---|---|
| Distribution | URL (no app store) | App Store |
| Installation | Optional, lightweight | Required |
| Updates | Automatic | Manual/auto |
| Hardware access | Limited | Full |
| Development cost | Lower (one codebase) | Higher (per platform) |
Why it matters
PWAs combine the best of web and native apps: installable, work offline, and update automatically. For products that don't justify the cost of maintaining native apps on multiple platforms, they are the pragmatic alternative.
References
- web.dev PWA — Google guide.
- Learn PWA — Google, 2024. Complete PWA course.
- Progressive Web Apps — MDN — MDN, 2024. Reference documentation.