A Progressive Web App uses modern web capabilities to deliver an app-like user experience. They evolve from pages in browser tabs to immersive, top-level apps, maintaining the web's low friction at every moment.
-
Progressive - Work for every user, regardless of browser choice because they’re built with progressive enhancement as a core tenet.
-
Responsive - Fit any form factor, desktop, mobile, tablet, or whatever is next.
-
Connectivity independent - Enhanced with service workers to work offline or on low quality networks.
-
App-like - Use the app-shell model to provide app-style navigations and interactions.
-
Fresh - Always up-to-date thanks to the service worker update process.
-
Safe - Served via TLS to prevent snooping and ensure content hasn’t been tampered with.
-
Discoverable - Are identifiable as “applications” thanks to W3C manifests and service worker registration scope allowing search engines to find them.
-
Re-engageable - Make re-engagement easy through features like push notifications.
-
Installable - Allow users to “keep” apps they find most useful on their home screen without the hassle of an app store.
-
Linkable - Easily share via URL and not require complex installation.
- Is web! (No need to maintain different codebases)
- Increases engagement on iOS users
- Easy updates, no need to deal with app stores (Licensing, updates t&cs...ect.)
- Search engine indexed / Easy to discorver
- Home screen installation / No need to download them
- Alllow starting smaller and scale
- Better for people with slow phones / connection
- Faster development
- Transition to new stack
- Apple's Service workers support
- Microsoft's Push notifications support
- Communication across other apps
- UX experience is not native
- Not all devices capabilities are supported (But they will be)