--- epic: 9 story: 9.3 title: "PWA Support" status: draft --- ## Epic 9 — Web App (React + WASM) **Goal:** Zero-install web experience with real-time collaboration. ### Story 9.3: PWA Support As a web user, I want CalcPad to work offline and be installable on my device, So that I can use it like a native app without network dependency. **Acceptance Criteria:** **Given** the web app has been visited at least once **When** the user loses network connectivity **Then** the service worker serves the cached application shell and assets **And** all previously loaded sheets remain accessible and editable offline **Given** a user visits the web app in a supported browser **When** the browser detects the PWA manifest **Then** an "Add to Home Screen" / install prompt is available **And** installing creates a standalone app icon on the user's device **Given** the app is running offline **When** a user performs a currency or unit conversion that relies on exchange rates **Then** the most recently cached rates are used for evaluation **And** a subtle indicator shows that rates may be stale **Given** a user navigates to the web app for the first time on a reasonable connection **When** the initial page load completes **Then** the time to interactive is less than 2 seconds **And** the app scores above 90 on Lighthouse PWA, Performance, and Best Practices audits