This plugin is intended to provide an offline experience for webpack projects. It uses ServiceWorker, and AppCache as a fallback under the hood. Simply include this plugin in your webpack.config, and the accompanying runtime in your client script, and your project will become offline ready by caching all (or some) of the webpack output assets.
Become a sponsor and get your logo on our README on Github with a link to your site.
Become a sponsor
npm install offline-plugin [--save-dev]
First, instantiate the plugin in your webpack.config:
// webpack.config.js example
var OfflinePlugin = require('offline-plugin');
module.exports = {
// ...
plugins: [
// ... other plugins
// it's always better if OfflinePlugin is the last plugin added
new OfflinePlugin()
]
// ...
}(and optionally configure with options)
Then, add the runtime into your entry file (typically main entry):
require('offline-plugin/runtime').install();ES6/Babel/TypeScript
import * as OfflinePluginRuntime from 'offline-plugin/runtime';
OfflinePluginRuntime.install();For more details of usage with
TypeScriptsee here
ℹ️ Troubleshooting | FAQ
- Easy Offline First Apps With Webpack's Offline Plugin
- Handling Client Side App Updates (with Service Workers)
All options are optional and offline-plugin can be used without specifying them.
offline-pluginPWA- Omroep West
- Preact (source)
- CodePan (source)
- Offline Kanban (source)
- Online Board (source)
- Fluid Outliner (source)
If you are using offline-plugin, feel free to submit a PR to add your project to this list.
Support it by giving feedback, contributing, becoming a backer/sponsor or just by 🌟 starring the project!
Support us with a monthly donation and help us continue our activities. [Become a backer]
See CONTRIBUTING