A partial archive of discourse.wicg.io as of Saturday February 24, 2024.

Service worker content indexing


Users have no easy way of finding sites with full offline experiences when there is no network connection. Many users don’t even have an expectation that offline web experiences exist.

The browser could help to promote and manage good offline experiences, but it is limited in the information it has access to. The browser can identify what URLs a SW has cached, but it has no way of knowing which URLs are important or what kind of content is available at these URLs. A registered SW + its cache could be a fully interactive offline experience, an app shell, or a skeleton that only enables push notifications.

https://github.com/drufball/sw-content-indexing explores ways that a SW could expose it’s content to the browser. Browsers could use this information to generate “offline media” pages, or similar experiences.


Another use case would be, it would allow the browser to mark internal hyperlinks which are available while offline (similarly to how visited links are colored purple instead of blue, by default). Or the other way around, the browser could mark all the links which aren’t available offline, so the user wouldn’t have to waste time trying to load them.