# Make your Gatsby site a “Progressive web app" (PWA) “Progressive web app” (PWA) is a term for a new philosophy of building websites. PWAs help provide native-like features to web apps and require 3 things: 1. A manifest file (provided by gatsby-plugin-manifest) 2. A service worker (provided by gatsby-plugin-offline) 3. The site is served over https This recipe: --- Installs the necessary NPM packages. <NPMPackage name="gatsby-plugin-manifest" /> <NPMPackage name="gatsby-plugin-offline" /> --- Adds the manifest plugin and the offline plugin to your Gatsby config, which will add a manifest file and a service worker for you. It also adds a default icon @ src/images/icon.svg (which you can replace afterwards with your own). <File path="src/images/icon.png" content="https://github.com/gatsbyjs/gatsby/raw/master/docs/tutorial/part-eight/icon.png" /> <GatsbyPlugin name="gatsby-plugin-manifest" options={{ name: `GatsbyJS`, short_name: `GatsbyJS`, icon: `src/images/icon.png`, start_url: `/`, background_color: `#f7f0eb`, theme_color: `#a2466c`, display: `standalone`, }} /> <GatsbyPlugin name="gatsby-plugin-offline" /> --- After running this recipe, your site will be a PWA. Refer to the documentation for the manifest & offline plugins if there are any other edits you'd like to make. - https://www.gatsbyjs.org/packages/gatsby-plugin-manifest - https://www.gatsbyjs.org/packages/gatsby-plugin-offline