A curated collection of service worker resources.
A service worker is an event-driven worker registered against an origin and a path. It takes the form of a JavaScript file that can control the web page/site it is associated with, intercepting and modifying navigation and resource requests, and caching resources in a very granular fashion to give you complete control over how your app behaves in certain situations (the most obvious one being when the network is not available.)
If you want to contribute, please read the contribution guidelines.
Contents
- Must Reads
- Learning Resources
- Reference
- Browser Support
- Libraries and Tools
- Videos
- Case Studies
- Specific Technologies
Must Reads
- Designing Offline-First Web Apps - A fascinating look at design and UX considerations for dealing with various states of connectivity.
- Introduction to Service Worker - A graceful introduction to service workers.
- Offline Web Applications Using IndexedDB & Service Worker - This free Udacity course is a must if you're planning to dive deep into service workers.
- Service Workers Explained - Service workers explained by Alex Russell.
Learning Resources
- Building Offline Sites with ServiceWorkers and UpUp - A general introduction to service workers and using UpUp to provide offline functionality in minutes.
- Introduction to Service Worker
- Service Workers 101 - An infographic summarizing the most important parts of service workers API.
- ServiceWorker Cookbook by Mozilla - A collection of recipes for different use cases.
- The copy & paste guide to your first Service Worker - Shortest available introduction, by Remy Sharp.
- The offline cookbook - The bible of service worker Patterns by Jake Archibald.
Reference
- Background Sync Spec - The WIP spec for Background Sync.
- Service Workers - W3C Specification - The official service workers spec.
Browser Support
- Can I Use - Service Workers - Up-to-date browser support table of ServiceWorker API.
- Jake Archibald - Is Service Worker ready? - Current status of ServiceWorker support in different browsers.
Libraries and Tools
- UpUp - A popular service worker library providing complete offline functionality for your site in 1 line of code.
- sw-toolbox - A collection of simple helpers to simplify implementing common caching patterns.
- Manifest Generator - Generate a web app manifest, required for push notifications and installable web apps.
Videos
- Instant Loading: Building offline-first Progressive Web Apps - Google I/O 2016 - A quick dive into the most common technologies and techniques for building progressive web apps.
- Offline Web Applications Using IndexedDB & Service Worker - This free Udacity course is a must if you're planning to dive deep into service workers.
Case Studies
- Service Workers in Production - A case-study about how Google I/O 2015 web app was built.
Specific Technologies
Background Sync
- Background Sync Explained - The official "explainer" document for background sync, including one-off synchronization and periodic synchronization.
- Background Sync Spec - The WIP spec for Background Sync.
- Introducing Background Sync - A more reader friendly introduction to background sync, with some great video and code samples.
Installable Web Apps
- Increasing Engagement with Web App Install Banners - An intro to App Install Banners and making sure Chrome offers your web app to your users.
- Installable Web Apps with the Web App Manifest in Chrome for Android - An introduction to installable Web Apps in Chrome for Android.