Offline-first - A model where local data is the source of truth and the network is an unreliable accelerator; behavior is designed from failure, not from a lucky request.
Secure context - A condition (HTTPS or localhost) without which service workers, Cache Storage and some powerful APIs are unavailable; a PWA lives only in a secure context.
Service Worker - An event-driven proxy script between the page and the network with its own lifecycle; it runs outside the DOM, cannot access it, and can sleep and wake on events.
Lifecycle - install (prepare, precache) - waiting (the new one waits to take over) - activate (cleanup, claim) - then serving fetch; waiting protects open tabs from a version swap.
Scope - The path below which a service worker controls navigations and requests; set by the script's location and the Service-Worker-Allowed header.
Cache Storage - A programmable store of Request/Response pairs managed by code; it does not obey HTTP freshness semantics - invalidation is the author's job.
Cache First - A strategy: cache first, network only on a miss; for immutable revisioned content where speed matters more than freshness.
Network First - A strategy: network first with a timeout, cache as a fallback; for data where freshness matters but an offline answer beats a blank screen.
Stale While Revalidate - A strategy: serve the cache instantly and refresh it from the network in parallel for next time; a balance of speed and freshness.
Precache - Loading critical resources on install from a manifest with revisions (hashes); it guarantees a consistent offline set of one version.
Navigation fallback - Answering a navigation request from the cache (an app shell for an SPA, an offline page for an MPA) when the network is unavailable.
IndexedDB - An asynchronous transactional in-browser database for structured data with indexes; the client's local model, not a cache of responses.
Quota / eviction - The limit and eviction of an origin's storage under disk pressure; persistent storage lowers the eviction risk but does not guarantee permanence.
Outbox - A local queue of intents (unsent mutations): an action is saved offline and sent idempotently when the network returns.
Background Sync - An API that defers a retry until connectivity returns via the browser; unreliable in coverage, so it is complemented by a foreground retry.
Web App Manifest - A JSON description of the app (name, icons, display, start_url) that makes it installable and defines the look of the launched window.
Workbox - Google's library on top of the service worker: ready-made strategies, a precache manifest and routing; it removes manual boilerplate but not the need to understand the model.