# Cache API Resources

## Knowledge

- [web.dev: Storage for the web](https://web.dev/articles/storage-for-the-web)
  Authoritative FE map: Cache Storage for network/load resources; OPFS for files; IndexedDB for other data; quotas, eviction, persistent storage. Use for: when-to-choose framing and storage spectrum.
- [web.dev: The Cache API — a quick guide](https://web.dev/articles/cache-api-quick-guide)
  Practical API surface: `caches.open`, `add`/`addAll`/`put`, `match`/`matchAll`, delete; Request/Response shape; CORS/`put` notes. Use for: core mental model and method map.
- [MDN: Cache](https://developer.mozilla.org/en-US/docs/Web/API/Cache)
  Browser-facing Cache interface (persistent Request/Response storage; you own updates/expiry). Use for: API reference and examples.
- [MDN: CacheStorage](https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage)
  Named cache directory (`open`, `keys`, `delete`, `match`, `has`). Use for: multi-cache versioning and cleanup patterns.
- [MDN: Caching (PWA guides)](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Guides/Caching)
  How Cache API pairs with service workers (install/fetch). Use for: integration framing without jumping straight to Workbox.
- [web.dev: Service workers and the Cache Storage API](https://web.dev/articles/service-workers-cache-storage)
  Code-driven cache vs HTTP cache heuristics; SW + Cache Storage together. Use for: “why not only Cache-Control?”
- [web.dev: Service worker caching and HTTP caching](https://web.dev/articles/service-worker-caching-and-http-caching)
  Two-layer model and common strategies (network-only, cache-first, etc.). Use for: strategy lesson after open/CRUD basics.
- [web.dev: Offline Cookbook](https://web.dev/articles/offline-cookbook)
  Classic strategy recipes (cache-first, network-first, stale-while-revalidate, …). Use for: strategy practice scenarios.
- [web.dev: learn/pwa — Caching](https://web.dev/learn/pwa/caching)
  When to cache, named caches, practical PWA caching mindset. Use for: second-pass product framing.
- [MDN: Browser storage limits and eviction criteria](https://developer.mozilla.org/en-US/docs/Web/API/Storage_API/Storage_quotas_and_eviction_criteria)
  Quotas and eviction. Use for: design-review “will this stick?” (cross-check with storage-for-the-web).
- [web.dev: Persistent storage](https://web.dev/articles/persistent-storage)
  Best-effort vs persistent; Cache API included in protected set when granted. Use for: deal-breaker lesson on durability.

## Wisdom (Communities)

- [Stack Overflow — [service-worker] + [cache-storage]](https://stackoverflow.com/questions/tagged/service-worker+cache-storage)
  High volume of versioning, opaque response, and “why is match undefined?” edge cases. Use for: production-ish failure modes — verify against MDN/spec.
- [r/PWA](https://www.reddit.com/r/PWA/) and [r/webdev](https://www.reddit.com/r/webdev/)
  Product-context tradeoffs (offline shell vs always-fresh). Use for: second opinions; treat as anecdotes.
- [WebKit: Full Third-Party Cookie Blocking and More](https://webkit.org/blog/10218/full-third-party-cookie-blocking-and-more/)
  Safari script-writable storage / 7-day eviction context. Use for: “assume durable forever” pushback on iOS Safari.

## Gaps

- Workbox is a popular abstraction layer; this mission teaches the platform Cache API first so libraries don’t hide deal-breakers. Introduce Workbox only if the learner wants a production stack later.
- Storage Buckets API is still evolving; mention only if multi-tier eviction design becomes mission-critical.
