lukeed

@pwa/plugin-offline

PWA plugin for Offline Plugin

#Install

$ npm install --save-dev @pwa/plugin-offline

#Usage

The plugin is recognized by and attached to @pwa/core automatically.

However, you must manually include Offline's runtime into your bundle!

if (process.env.NODE_ENV === 'production') {
  if ('serviceWorker' in navigator) {
    require('offline-plugin/runtime').install();
  }
}

Note: For SW beginners, it's strongly recommended you use the above snippet!
However, it's not required to wrap registration in a NODE_ENV === 'production' check.

#Config

Configurable via the offline key on your pwa.config.js file.

Default Config:

exports.offline = {
  externals: [],
  appShell: '/index.html',
  excludes: ['**/.*', '**/*.map', '**/*.gz', '**/*.gzip', '**/*.br'],
  ServiceWorker: {
    output: 'sw.js',
    events: true
  }
}

Available Options:

Please refer to Offline Plugin's options options.

See also

@pwa/cli(3), @pwa/core(3), @pwa/plugin-brotli(3), @pwa/plugin-buble(3), @pwa/plugin-critters(3), @pwa/plugin-eslint(3), @pwa/plugin-gzip(3), @pwa/plugin-imagemin(3), @pwa/plugin-prettier(3), @pwa/plugin-sw-precache(3)