Skip to content
Allow your users to use your website while offline easily
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

OfflineHandler (Demo)

Allow your users to use your website while offline easily


  • Installation

Simply import OfflineHandler.min.js into your HTML and download OfflineHandler-sw.min.js at the root of your project.

<script src=""></script>	
  • How to use

    • Create a new OfflineHandler object with the ressources to be cached as the first parameter :

      let ajax = new OfflineHandler(['path/to/customFile.js'], ...);
    • Call your URLs with an additional parameter : ?v=1, or without any to get the default version.
      Changing this parameter will create a new cache version.
      Calling your URLs with ?v=no-cache will bypass the cached versions

  • Parameters

	 * List of ressources to be cached
	 * The current page is always cached, no need to add it here
	 * @type {String[]}
	const ressourceList = [

	 *  /|\ OPTIONAL /|\
	 * Path to the OfflineHandler ServiceWorker file
	 * @type {String}
	 * @default OfflineHandler-sw.min.js
	const serviceWorkerPath = 'OfflineHandler-sw.min.js';

	 *  /|\ OPTIONAL /|\
	 * Name of the URL parameter that holds the version of the files
	 * @type {String}
	 * @default v
	const versionParameter = 'v';

	 *  /|\ OPTIONAL /|\
	 * Should the old cached versions be deleted when a new one is created ?
	 * @type {Boolean}
	 * @default false
	const clearOldCache = false;

	 *  /|\ OPTIONAL /|\
	 * Should external requests be cached ?
	 * @type {Boolean}
	 * @default false
	const cacheExternalRequests = false;

	new OfflineHandler(ressourceList, serviceWorkerPath, versionParameter, clearOldCache, cacheExternalRequests);
  • Example

See this Github project for a working example.


You can’t perform that action at this time.