Progressive Web App (PWA)
A Progressive Web App (PWA) is a website built with modern web APIs to behave like a native app — installable, capable of offline use, and able to send push notifications — while still being delivered through a standard browser and URL.
Definition
A Progressive Web App (PWA) is a website built with modern web APIs to behave like a native app — installable, capable of offline use, and able to send push notifications — while still being delivered through a standard browser and URL.
Overview
PWAs are defined less by a single technology and more by a set of capabilities layered on top of a normal website: a web app manifest file (declaring the app's name, icons, and display mode) makes the site installable to a home screen; a Service Worker intercepts network requests to enable offline access and caching strategies; and HTTPS is required throughout, since Service Workers only run on secure origins. Google popularized the term 'Progressive Web App' around 2015 to describe this pattern, framing it as an incremental enhancement path — a site can add PWA capabilities progressively without a rewrite, and users on capable browsers get an app-like experience (offline support, home-screen install, push notifications) while users on other browsers still get a working website. This is distinct from cross-platform frameworks like Ionic Framework or React Native, which package an app for native app-store distribution. PWAs are commonly evaluated using Google's Lighthouse tool and Core Web Vitals, and companies including Twitter (Twitter Lite), Starbucks, and Pinterest have published case studies on significant engagement and performance gains after adopting the pattern, particularly in markets with slower networks or storage-constrained devices.
Key Concepts
- Installable to a device home screen via a web app manifest
- Offline functionality through Service Worker caching strategies
- Push notification support on supporting platforms
- Delivered over HTTPS with no app-store submission required
- App-like full-screen display mode, hiding browser chrome
- Progressive enhancement — degrades gracefully on unsupported browsers
- Automatically updates like a normal website, no manual app updates