Home

Awesome

sw-precache-brunch Build Status

Adds Service Worker Precache support to brunch.

Usage

Install the plugin via npm with npm install --save-dev sw-precache-brunch.

Or, do manual install:

Project example of it's usage

Configuration

swFileName [String]

Filename for service worker.

It will be placed into destination (public) brunch folder.

Default: 'sw.js'

autorequire [Boolean, Array]

This option gives possibility to add and register service worker into html asset files.

If value set as true service worker will be added and registered to ALL html assets automatically.

Config example:

swPrecache: {
  'swFileName': 'service-worker.js',
  'autorequire': true
}
swPrecache: {
  'autorequire': ['app/assets/index.html']
}

Default: false

options [Object]

Options for sw-precache.

Look at all sw-precache available options.

Default: {staticFileGlobs: ['public/**/*.*']}

If you don't pass any configuration properties it will cache all files in your public folder and create sw.js. All what you need is register service worker for your app.

###Config example


module.exports = {
  files: {
    javascripts: {
      joinTo: {
        'vendor.js': /^(?!app|test)/,
        'app.js': /^app/,
        'test.js': /^test/
      }
    },
    stylesheets: {joinTo: 'app.css'},
  },
  plugins: {
    babel: {presets: ['es2015']},
    swPrecache: {
      swFileName: 'service-worker.js',
      options: { 
        staticFileGlobs: [
           'public/app.css',
           'public/app.js',
           'public/index.html'
        ],
        stripPrefix: 'public/'
      }
    }
  }
};

module.exports = {
  plugins: {
    ...
    swPrecache: {
      autorequire: ['app/assets/index.html']
    }
    ...
  }
};

License

MIT © Artem Denysov