{
 "caniuse": [
  "serviceworkers"
 ],
 "compat_features": [
  "api.Cache",
  "api.Cache.add",
  "api.Cache.addAll",
  "api.Cache.delete",
  "api.Cache.keys",
  "api.Cache.match",
  "api.Cache.matchAll",
  "api.Cache.put",
  "api.Cache.worker_support",
  "api.CacheStorage",
  "api.CacheStorage.delete",
  "api.CacheStorage.has",
  "api.CacheStorage.keys",
  "api.CacheStorage.match",
  "api.CacheStorage.open",
  "api.CacheStorage.secure_context_required",
  "api.CacheStorage.worker_support",
  "api.Client",
  "api.Client.frameType",
  "api.Client.id",
  "api.Client.postMessage",
  "api.Client.type",
  "api.Client.url",
  "api.Clients",
  "api.Clients.claim",
  "api.Clients.get",
  "api.Clients.matchAll",
  "api.Clients.matchAll.options_includeUncontrolled_parameter",
  "api.Clients.openWindow",
  "api.ExtendableEvent",
  "api.ExtendableEvent.ExtendableEvent",
  "api.ExtendableEvent.waitUntil",
  "api.ExtendableEvent.waitUntil.async_waitUntil",
  "api.ExtendableMessageEvent",
  "api.ExtendableMessageEvent.ExtendableMessageEvent",
  "api.ExtendableMessageEvent.data",
  "api.ExtendableMessageEvent.lastEventId",
  "api.ExtendableMessageEvent.origin",
  "api.ExtendableMessageEvent.ports",
  "api.ExtendableMessageEvent.source",
  "api.FetchEvent",
  "api.FetchEvent.FetchEvent",
  "api.FetchEvent.clientId",
  "api.FetchEvent.handled",
  "api.FetchEvent.preloadResponse",
  "api.FetchEvent.request",
  "api.FetchEvent.respondWith",
  "api.FetchEvent.respondWith.networkerror_on_same-origin_cors",
  "api.FetchEvent.respondWith.resource_url",
  "api.FetchEvent.resultingClientId",
  "api.NavigationPreloadManager",
  "api.NavigationPreloadManager.disable",
  "api.NavigationPreloadManager.enable",
  "api.NavigationPreloadManager.getState",
  "api.NavigationPreloadManager.setHeaderValue",
  "api.Navigator.serviceWorker",
  "api.ServiceWorker",
  "api.ServiceWorker.postMessage",
  "api.ServiceWorker.scriptURL",
  "api.ServiceWorker.state",
  "api.ServiceWorker.statechange_event",
  "api.ServiceWorkerContainer",
  "api.ServiceWorkerContainer.controller",
  "api.ServiceWorkerContainer.controllerchange_event",
  "api.ServiceWorkerContainer.getRegistration",
  "api.ServiceWorkerContainer.getRegistrations",
  "api.ServiceWorkerContainer.message_event",
  "api.ServiceWorkerContainer.ready",
  "api.ServiceWorkerContainer.register",
  "api.ServiceWorkerContainer.startMessages",
  "api.ServiceWorkerContainer.worker_support",
  "api.ServiceWorkerGlobalScope",
  "api.ServiceWorkerGlobalScope.activate_event",
  "api.ServiceWorkerGlobalScope.clients",
  "api.ServiceWorkerGlobalScope.fetch_event",
  "api.ServiceWorkerGlobalScope.install_event",
  "api.ServiceWorkerGlobalScope.message_event",
  "api.ServiceWorkerGlobalScope.registration",
  "api.ServiceWorkerGlobalScope.serviceWorker",
  "api.ServiceWorkerGlobalScope.skipWaiting",
  "api.ServiceWorkerRegistration.active",
  "api.ServiceWorkerRegistration.installing",
  "api.ServiceWorkerRegistration.navigationPreload",
  "api.ServiceWorkerRegistration.scope",
  "api.ServiceWorkerRegistration.unregister",
  "api.ServiceWorkerRegistration.update",
  "api.ServiceWorkerRegistration.updateViaCache",
  "api.ServiceWorkerRegistration.updatefound_event",
  "api.ServiceWorkerRegistration.waiting",
  "api.WindowClient",
  "api.WindowClient.ancestorOrigins",
  "api.WindowClient.focus",
  "api.WindowClient.focused",
  "api.WindowClient.navigate",
  "api.WindowClient.visibilityState",
  "api.WorkerNavigator.serviceWorker",
  "api.caches",
  "api.caches.secure_context_required",
  "api.caches.worker_support",
  "http.headers.Service-Worker-Navigation-Preload"
 ],
 "description": "The service worker of a website is a script that runs in its own thread and which acts as local proxy that intercepts network requests from the website. Use a service worker to implement advanced caching strategies, offline support, background tasks, or push notification support on your website.",
 "description_html": "The service worker of a website is a script that runs in its own thread and which acts as local proxy that intercepts network requests from the website. Use a service worker to implement advanced caching strategies, offline support, background tasks, or push notification support on your website.",
 "group": [
  "workers"
 ],
 "kind": "feature",
 "name": "Service workers",
 "spec": [
  "https://w3c.github.io/ServiceWorker/"
 ],
 "status": {
  "baseline": "high",
  "baseline_high_date": "2020-10-30",
  "baseline_low_date": "2018-04-30",
  "by_compat_key": {
   "api.Cache": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.add": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "44",
     "chrome_android": "44",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.addAll": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "46",
     "chrome_android": "46",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.delete": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.keys": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.match": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.matchAll": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "47",
     "chrome_android": "47",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.put": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Cache.worker_support": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "16",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.delete": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.has": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.keys": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.match": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "54",
     "chrome_android": "54",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.open": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.secure_context_required": {
    "baseline": "high",
    "baseline_high_date": "2022-07-15",
    "baseline_low_date": "2020-01-15",
    "support": {
     "chrome": "65",
     "chrome_android": "65",
     "edge": "79",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.CacheStorage.worker_support": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "16",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Client": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Client.frameType": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "43",
     "chrome_android": "43",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Client.id": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Client.postMessage": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Client.type": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "60",
     "chrome_android": "60",
     "edge": "17",
     "firefox": "54",
     "firefox_android": "54",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Client.url": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Clients": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Clients.claim": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Clients.get": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "45",
     "firefox_android": "45",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Clients.matchAll": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "54",
     "firefox_android": "54",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Clients.matchAll.options_includeUncontrolled_parameter": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "54",
     "firefox_android": "54",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.Clients.openWindow": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableEvent": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableEvent.ExtendableEvent": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "41",
     "chrome_android": "41",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableEvent.waitUntil": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableEvent.waitUntil.async_waitUntil": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "60",
     "chrome_android": "60",
     "edge": "17",
     "firefox": "53",
     "firefox_android": "53",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent.ExtendableMessageEvent": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent.data": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent.lastEventId": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent.origin": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent.ports": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ExtendableMessageEvent.source": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "51",
     "chrome_android": "51",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.FetchEvent": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.FetchEvent.FetchEvent": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "44",
     "chrome_android": "44",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.FetchEvent.clientId": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "49",
     "chrome_android": "49",
     "edge": "17",
     "firefox": "45",
     "firefox_android": "45",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.FetchEvent.handled": {
    "baseline": "high",
    "baseline_high_date": "2025-03-12",
    "baseline_low_date": "2022-09-12",
    "support": {
     "chrome": "86",
     "chrome_android": "86",
     "edge": "86",
     "firefox": "84",
     "firefox_android": "84",
     "safari": "16",
     "safari_ios": "16"
    }
   },
   "api.FetchEvent.preloadResponse": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.FetchEvent.request": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.FetchEvent.respondWith": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.FetchEvent.respondWith.networkerror_on_same-origin_cors": {
    "baseline": false,
    "support": {
     "chrome": "66",
     "chrome_android": "66",
     "edge": "79",
     "firefox": "59",
     "firefox_android": "59"
    }
   },
   "api.FetchEvent.respondWith.resource_url": {
    "baseline": false,
    "support": {
     "firefox": "59",
     "firefox_android": "59"
    }
   },
   "api.FetchEvent.resultingClientId": {
    "baseline": "high",
    "baseline_high_date": "2025-03-12",
    "baseline_low_date": "2022-09-12",
    "support": {
     "chrome": "72",
     "chrome_android": "72",
     "edge": "79",
     "firefox": "65",
     "firefox_android": "65",
     "safari": "16",
     "safari_ios": "16"
    }
   },
   "api.NavigationPreloadManager": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.NavigationPreloadManager.disable": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.NavigationPreloadManager.enable": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.NavigationPreloadManager.getState": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.NavigationPreloadManager.setHeaderValue": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.Navigator.serviceWorker": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorker": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorker.postMessage": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorker.scriptURL": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorker.state": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorker.statechange_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.controller": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.controllerchange_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.getRegistration": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.getRegistrations": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "45",
     "chrome_android": "45",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.message_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.ready": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.register": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.startMessages": {
    "baseline": "high",
    "baseline_high_date": "2022-07-15",
    "baseline_low_date": "2020-01-15",
    "support": {
     "chrome": "74",
     "chrome_android": "74",
     "edge": "79",
     "firefox": "64",
     "firefox_android": "64",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerContainer.worker_support": {
    "baseline": false,
    "support": {
     "firefox": "133",
     "firefox_android": "133",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.activate_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.clients": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.fetch_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.install_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.message_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.registration": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerGlobalScope.serviceWorker": {
    "baseline": false,
    "support": {
     "chrome": "79",
     "chrome_android": "79",
     "edge": "79",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.ServiceWorkerGlobalScope.skipWaiting": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "41",
     "chrome_android": "41",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.active": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.installing": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.navigationPreload": {
    "baseline": "high",
    "baseline_high_date": "2024-10-05",
    "baseline_low_date": "2022-04-05",
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "17",
     "firefox": "99",
     "firefox_android": "99",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   },
   "api.ServiceWorkerRegistration.scope": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.unregister": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.update": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "45",
     "chrome_android": "45",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.updateViaCache": {
    "baseline": "high",
    "baseline_high_date": "2021-04-02",
    "baseline_low_date": "2018-10-02",
    "support": {
     "chrome": "68",
     "chrome_android": "68",
     "edge": "18",
     "firefox": "57",
     "firefox_android": "57",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.updatefound_event": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.ServiceWorkerRegistration.waiting": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.WindowClient": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.WindowClient.ancestorOrigins": {
    "baseline": false,
    "support": {
     "safari": "16",
     "safari_ios": "16"
    }
   },
   "api.WindowClient.focus": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.WindowClient.focused": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.WindowClient.navigate": {
    "baseline": "high",
    "baseline_high_date": "2025-03-12",
    "baseline_low_date": "2022-09-12",
    "support": {
     "chrome": "49",
     "chrome_android": "49",
     "edge": "17",
     "firefox": "50",
     "firefox_android": "50",
     "safari": "16",
     "safari_ios": "16"
    }
   },
   "api.WindowClient.visibilityState": {
    "baseline": "high",
    "baseline_high_date": "2020-10-30",
    "baseline_low_date": "2018-04-30",
    "support": {
     "chrome": "42",
     "chrome_android": "42",
     "edge": "17",
     "firefox": "44",
     "firefox_android": "44",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.WorkerNavigator.serviceWorker": {
    "baseline": false,
    "support": {
     "firefox": "133",
     "firefox_android": "133",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.caches": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.caches.secure_context_required": {
    "baseline": "high",
    "baseline_high_date": "2025-01-26",
    "baseline_low_date": "2022-07-26",
    "support": {
     "chrome": "65",
     "chrome_android": "65",
     "edge": "79",
     "firefox": "103",
     "firefox_android": "103",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "api.caches.worker_support": {
    "baseline": "high",
    "baseline_high_date": "2020-10-12",
    "baseline_low_date": "2018-04-12",
    "support": {
     "chrome": "40",
     "chrome_android": "40",
     "edge": "16",
     "firefox": "41",
     "firefox_android": "41",
     "safari": "11.1",
     "safari_ios": "11.3"
    }
   },
   "http.headers.Service-Worker-Navigation-Preload": {
    "baseline": false,
    "support": {
     "chrome": "59",
     "chrome_android": "59",
     "edge": "18",
     "safari": "15.4",
     "safari_ios": "15.4"
    }
   }
  },
  "support": {
   "chrome": "45",
   "chrome_android": "45",
   "edge": "17",
   "firefox": "44",
   "firefox_android": "44",
   "safari": "11.1",
   "safari_ios": "11.3"
  }
 },
 "id": "service-workers",
 "groups": [
  "workers"
 ],
 "specs": [
  {
   "url": "https://w3c.github.io/ServiceWorker/",
   "seriesComposition": "full",
   "shortname": "service-workers",
   "series": {
    "shortname": "service-workers",
    "currentSpecification": "service-workers",
    "title": "Service Workers",
    "shortTitle": "Service Workers",
    "releaseUrl": "https://www.w3.org/TR/service-workers/",
    "nightlyUrl": "https://w3c.github.io/ServiceWorker/"
   },
   "organization": "W3C",
   "groups": [
    {
     "name": "Web Applications Working Group",
     "url": "https://www.w3.org/groups/wg/webapps/"
    }
   ],
   "release": {
    "url": "https://www.w3.org/TR/service-workers/",
    "status": "Candidate Recommendation Draft",
    "filename": "Overview.html"
   },
   "nightly": {
    "url": "https://w3c.github.io/ServiceWorker/",
    "status": "Editor's Draft",
    "alternateUrls": [],
    "repository": "https://github.com/w3c/ServiceWorker",
    "sourcePath": "index.bs",
    "filename": "index.html"
   },
   "title": "Service Workers Nightly",
   "source": "w3c",
   "shortTitle": "Service Workers Nightly",
   "categories": [
    "browser"
   ],
   "standing": "good",
   "tests": {
    "repository": "https://github.com/web-platform-tests/wpt",
    "testPaths": [
     "service-workers"
    ]
   },
   "fragment": null
  }
 ],
 "mdnUrls": [
  {
   "slug": "Web/API/Service_Worker_API",
   "title": "Service Worker API",
   "anchor": null,
   "url": "https://developer.mozilla.org/docs/Web/API/Service_Worker_API"
  }
 ],
 "standardPositions": [],
 "hasNegativeStandardPosition": false,
 "stateOfSurveys": [],
 "chromeUseCounters": {},
 "interop": [],
 "wpt": {
  "url": "https://wpt.fyi/results?q=feature:service-workers"
 },
 "developerSignals": null,
 "bugs": {
  "chrome": [
   "https://issues.chromium.org/issues/40364838",
   "https://issues.chromium.org/issues/41337436",
   "https://crbug.com/41411856",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=1347319",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=906991",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=1039558",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=977496",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=971571",
   "https://crbug.com/623464",
   "https://crbug.com/915685",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=448427",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=778497",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=648295",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=719052",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=720919",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=542499",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=836217",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=771933",
   "https://bugs.chromium.org/p/chromium/issues/detail?id=807818",
   "https://crbug.com/705685",
   "https://crbug.com/675540",
   "https://crbug.com/659074",
   "https://crbug.com/552310",
   "https://code.google.com/p/chromium/issues/detail?id=598608",
   "https://code.google.com/p/chromium/issues/detail?id=552309",
   "https://code.google.com/p/chromium/issues/detail?id=530540",
   "https://code.google.com/p/chromium/issues/detail?id=461411",
   "https://code.google.com/p/chromium/issues/detail?id=513655",
   "https://code.google.com/p/chromium/issues/detail?id=501380",
   "https://code.google.com/p/chromium/issues/detail?id=523916",
   "http://crbug.com/500911",
   "https://code.google.com/p/chromium/issues/detail?id=510298",
   "https://code.google.com/p/chromium/issues/detail?id=427652",
   "https://code.google.com/p/chromium/issues/detail?id=450507",
   "https://code.google.com/p/chromium/issues/detail?id=498596",
   "https://code.google.com/p/chromium/issues/detail?id=504222",
   "https://code.google.com/p/chromium/issues/detail?id=478382",
   "http://crbug.com/455282",
   "http://crbug.com/425426",
   "http://crbug.com/364627",
   "https://crbug.com/40364838"
  ],
  "chrome_android": [
   "https://crbug.com/40364838"
  ],
  "edge": [
   "https://crbug.com/40364838"
  ]
 },
 "useCases": null,
 "baselineLowDateAsObject": "2018-04-30T00:00:00.000Z",
 "baselineHighDateAsObject": "2020-10-30T00:00:00.000Z"
}