Is ServiceWorker ready?

Yes.

Service worker enthusiasm

The first thing any implementation needs.

Chrome

Supported

Firefox

Supported

Opera

Supported

Samsung Internet

Supported

Safari

Supported

Edge

Supported

Promises

Not service worker-specific, but required by service worker. Spec.

Chrome

Supported since version 36

Firefox

Supported since version 29

Opera

Supported since version 23

Samsung Internet

Supported since version 2

Safari

Supported since version 9

Edge

Supported since version 13

Debugging

State of debugging tools.

Chrome

Supported since version 40

Firefox

Supported since version 47

Opera

Supported

Samsung Internet

Supported

Safari

Supported since version 11.1

Edge

Supported since version 17

Register / unregister

Register for a SW and get a registration instance back, unregister undoes. Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

postMessage to & from worker

Spec. Test.

Chrome

Supported since version 45

Firefox

Supported since version 44

Opera

Supported since version 32

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Fetch event

Fires for pages and all sub-resources. Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

fetchEvent.request

Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

fetchEvent.respondWith()

Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Install event

Install event fires in a newly discovered SW. Includes InstallEvent.waitUntil(). Spec. Test

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

self.skipWaiting()

Allow an installing worker to take over from the current active worker once installed. Spec. Test.

Chrome

Supported since version 42

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Activate event

Activate event fires once this worker becomes the active worker in a registration. Includes event.waitUntil(). Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

clients.claim()

Allow an active worker to take control of pages in its scope (eg, documents that were loaded before the SW was registered). Spec. Test.

Chrome

Supported since version 42

Firefox

Supported since version 44

Opera

Supported since version 33

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Update checks

Browser checks for SW updates after navigation. Spec.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Service worker lifecycle

Allow a next version to be in waiting & take over when appropriate.

Chrome

Supported since version 40

Firefox

Supported since version 44

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Request

Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 39

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 10.1

Edge

Supported since version 14

Response

Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 39

Opera

Supported since version 33

Samsung Internet

Supported since version 4

Safari

Supported since version 10.1

Edge

Supported since version 14

fetch(request)

Spec. Test.

Chrome

Supported since version 40

Firefox

Supported since version 39

Opera

Supported since version 27

Samsung Internet

Supported since version 4

Safari

Supported since version 10.1

Edge

Supported since version 14

caches

Spec. Test.

Chrome

Supported since version 46

Firefox

Supported since version 44

Opera

Supported since version 33

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 16

serviceWorker.ready

Spec. Test.

Chrome

Supported

Firefox

Supported since version 44

Opera

Supported since version 33

Samsung Internet

Supported since version 4

Safari

Supported since version 11.1

Edge

Supported since version 17

Background sync

Deferring tasks until the user has connectivity. Spec. Test.

Chrome

Supported since version 49

Firefox

No support

Opera

No support

Samsung Internet

No support

Safari

No support

Edge

No support

Service worker is here. Get busy with it.