Progressive Web Apps

Last updated on
22 January 2019

Drupal 7 will no longer be supported after January 5, 2025. Learn more and find resources for Drupal 7 sites

This page has not yet been reviewed by Mobile guide for Drupal 7 maintainer(s) and added to the menu.

A website can be called a Progressive Web App when it implements a few rather new Web Platform features, most notably a Service Worker and a Web Manifest. These features allow your website to become more powerful than a plain website, by way of controlling the offline experience and the ability to add to homescreen.

Getting Started

Read the documentation for PWAs from either Google or Mozilla to become familiar with the foundational concepts. What follows is a summary of the two main components: Service Worker and Web Manifest.

Service Worker

Think of a Service Worker like a helpful proxy server that sits in between your browser and the internet. It has the ability to intercept your outgoing HTTP requests and act on them, or even modify them. While it might sound scary, that is precisely why Service Workers are HTTPS only. If your website does not have HTTPs, you cannot use a Service Worker.

Web Manifest

The Web Manifest is a standard which unifies how people can display and discover apps on various platforms. When visitors save your PWA to their home screen the Web Manifest helps control how your site will appear. The title, icons, and even the color of the browser UI can be controlled on some platforms. The manifest also holds other meta data that helps power discovery engines, app stores, and the like.

Drupal modules offering PWA functionality

Here is a non-exhaustive list of modules which offer Progressive Web App functionality:

Help improve this page

Page status: No known problems

You can: