## Why Improve page load performance (especially repeat visits) by caching key assets closer to the user and reducing unnecessary network requests. ## What Changes - Add a Service Worker to the site so the browser can cache and serve core assets efficiently. - Pre-cache the critical shell (CSS, JS, fonts, icons) and use a runtime caching strategy for images and other large assets. - Ensure safe update behavior on deploy (new service worker activates and old caches are cleaned up). - Keep development experience predictable (service worker disabled or bypassed in dev by default). ## Capabilities ### New Capabilities - `service-worker-performance`: Provide a service worker-based caching strategy that improves perceived load time and reduces network usage on repeat visits, while ensuring safe updates on new deploys. ### Modified Capabilities - (none) ## Impact - Adds new client-side assets for the service worker (e.g., `sw.js`) and registration logic in the site layout. - Changes browser caching behavior; must avoid serving stale HTML indefinitely and ensure caches are versioned/invalidated on deploy. - Service workers require a secure context (HTTPS) in production; local dev behavior should be explicitly controlled to avoid confusing caching during iteration.