Service Workers

From Joomla! Documentation

Service Worker Specification

This is a discussion document to work out the best practice to implement Progressive Web App manifest files and the implementation of service workers.

The idea is to support the manifest and service worker generation dynamically.
The scope it to support the following features:-

  • Offline Navigation
  • Advanced Cache
  • Splash screen
  • Lazy (Background) Loading
  • Web Push Notifications
  • Theming
  • Home Screen Management

Web App Manifest [1]

  1. system/manifest: $document->addCustomTag('<link rel="manifest" href="' . $base . '/index.php?option=com_ajax&plugin=joocialWebpushManifest&format=raw">');
  2. ajax/manifest: Generator class
    1. template - params
    2. wam/ component listener plugin
    3. json output
  3. Service Worker Geneation: event hub
    1. wam/ listener plugin: JDocument->addServiceWorker
    2. JS Hub initilization