Service worker clients
I have mentioned the service worker clients several times in this chapter. The obvious definition is a browser tab with a site's page open. While this will be the case in most situations, it is not the only client type.
Because service workers execute in a separate context from a browser tab's UI thread, they can service multiple clients. This includes multiple tabs, push notifications, and background sync events. The latter two are clients without a traditional user interface.
The service worker specification says (https://w3c.github.io/ServiceWorker/#service-worker-client-concept):
"A service worker client is an environment."
It goes on to define a series of potential client types. The concept of a service worker client is designed not to account for the obvious browser tab, but any process that might trigger a service worker event. For now, this includes push notifications and background sync events. The future is open as more features are being standardized to use...