Progressive Web Apps (PWAs) are web applications that use service workers to work offline and on low-quality networks. Service workers are scripts that run in the background to control how network requests from the web page are handled, allowing the app to work offline. The app shell model caches the minimal HTML, CSS, and JavaScript needed to load the user interface for instant loading. When online, additional content is populated in the app shell. PWAs are installed to the home screen via a web app manifest for a native app-like experience.