Awesome Service Workers
Service Workersを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
目次
必読
- Building Progressive Web Apps - O’Reilly - Service Worker、キャッシュ戦略、プッシュ通知などの実践ガイド兼リファレンス。モダンなプログレッシブウェブアプリ構築に必要なすべて。
- Introduction to Service Worker - Service Worker へのやさしい入門。
- Offline Web Applications Using IndexedDB & Service Worker - Service Worker と IndexedDB を紹介する優れた Udacity コース。
- Service Workers Explained - Alex Russell による Service Worker の解説。
学習リソース
- Building Offline Sites with ServiceWorkers and UpUp - Service Worker の一般的な入門と、UpUp を使って数分でオフライン機能を提供する方法。
- Introduction to Service Worker
- Service Workers 101 - Service Worker API の最も重要な部分を要約したインフォグラフィック。
- ServiceWorker Cookbook by Mozilla - さまざまなユースケース向けレシピのコレクション。
- The copy & paste guide to your first Service Worker - Remy Sharp による、最短の入門。
- The offline cookbook - Jake Archibald による Service Worker パターンのバイブル。
- Designing Offline-First Web Apps - さまざまな接続状態を扱うデザインと UX の考慮点を魅力的に紹介します。
リファレンス
- Background Sync Spec - Background Sync の作業中仕様。
- Service Workers - W3C Specification - Service Worker の公式仕様。
ブラウザーサポート
- Can I Use - Service Workers - ServiceWorker API の最新ブラウザーサポート表。
- Jake Archibald - Is Service Worker ready? - 各ブラウザーでの ServiceWorker サポートの現在の状況。
ライブラリーとツール
- UpUp - 1行のコードでサイトに完全なオフライン機能を提供する人気の Service Worker ライブラリー。
- sw-toolbox - 一般的なランタイムキャッシュパターンの実装を単純化するシンプルなヘルパーのコレクション。
- Manifest Generator - プッシュ通知とインストール可能なウェブアプリに必要なウェブアプリマニフェストを生成します。
- sw-precache - ローカルの App Shell リソースをキャッシュする Service Worker を生成します。
- sw-offline-google-analytics - 接続が利用可能になった際に、オフラインの Google Analytics リクエストを再試行する Service Worker ヘルパーライブラリー。
- Workbox - アセットのキャッシュを容易にし、プログレッシブウェブアプリ構築に使う機能を最大限に活用できるライブラリーと Node モジュールの集合。
動画
- Instant Loading: Building offline-first Progressive Web Apps - Google I/O 2016 - プログレッシブウェブアプリを構築するための最も一般的な技術と手法を素早く解説します。
- Offline Web Applications Using IndexedDB & Service Worker - Service Worker を深く学ぶ予定なら、この無料 Udacity コースは必見です。
- Instant Loading with Service Workers (Chrome Dev Summit 2015) - 初回・再訪ユーザーの読み込み時間を最適化するウェブアプリの構成方法と、記述すべきボイラープレートコードを最小化する有用な Service Worker ライブラリーを説明します。
ケーススタディ
- Service Workers in Production - Google I/O 2015 ウェブアプリの構築方法に関するケーススタディ。
- Measuring the Real-world Performance Impact of Service Workers - Service Worker の最も重要な利点の一つ(少なくともパフォーマンスの観点から)は、アセットのキャッシュを先回りして制御できることです。必要なリソースをすべてキャッシュできるウェブアプリケーションは、再訪ユーザーに対して大幅に速く読み込まれるはずです。しかしこの改善は、実際のユーザーにはどのように見えるのでしょうか?また、どう測定すればよいのでしょうか?