Is ServiceWorker ready?

ServiceWorker enthusiasm

The first thing any implementation needs.

Chrome

Supported

Firefox

Supported

Opera

Supported

Safari

No support

Internet Explorer

No support

Promises

Not ServiceWorker-specific, but required by ServiceWorker. Spec.

Chrome

Supported since version 36

Firefox

Supported since version 29

Opera

Supported since version 23

Safari

Somewhat supported since version 7.1

Internet Explorer

Somewhat supported

Debugging

State of debugging tools

Chrome

Supported since version 40

Firefox

No support

Opera

No support

Safari

No support

Internet Explorer

No support

Register / unregister

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

Chrome

Supported since version 40

Firefox

Somewhat supported

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

postMessage to & from worker

Spec. Test.

Chrome

Somewhat supported since version 40

Firefox

No support

Opera

Somewhat supported since version 27

Safari

No support

Internet Explorer

No support

Fetch event

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

Chrome

Supported since version 40

Firefox

Somewhat supported

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

fetchEvent.request

Spec. Test.

Chrome

Supported since version 40

Firefox

Somewhat supported

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

fetchEvent.respondWith()

Spec. Test.

Chrome

Supported since version 40

Firefox

Somewhat supported

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

Install event

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

Chrome

Supported since version 40

Firefox

Somewhat supported

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

self.skipWaiting()

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

Chrome

Somewhat supported

Firefox

No support

Opera

No support

Safari

No support

Internet Explorer

No support

Activate event

Activate event fires after others become redundant. Includes InstallEvent.waitUntil(). Spec. Test.

Chrome

Supported since version 40

Firefox

Somewhat supported

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

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

Somewhat supported since version 42

Firefox

No support

Opera

No support

Safari

No support

Internet Explorer

No support

Update checks

Browser checks for SW updates after navigation. Spec.

Chrome

Supported since version 40

Firefox

No support

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

ServiceWorker lifecycle

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

Chrome

Somewhat supported since version 40

Firefox

No support

Opera

No support

Safari

No support

Internet Explorer

No support

Request

Spec. Test.

Chrome

Somewhat supported since version 40

Firefox

No support

Opera

No support

Safari

No support

Internet Explorer

No support

Response

Spec. Test.

Chrome

Supported since version 40

Firefox

No support

Opera

Supported since version 27

Safari

No support

Internet Explorer

No support

fetch(request)

Spec. Test.

Chrome

Somewhat supported since version 40

Firefox

No support

Opera

Somewhat supported since version 27

Safari

No support

Internet Explorer

No support

caches

Spec. Test.

Chrome

Somewhat supported since version 40

Firefox

No support

Opera

Somewhat supported since version 27

Safari

No support

Internet Explorer

No support

serviceWorker.ready

Spec. Test.

Chrome

No support

Firefox

No support

Opera

No support

Safari

No support

Internet Explorer

No support

ServiceWorker is coming. Look busy.