#9373: UI: add PWA support to control UI
app: web-ui
stale
Cluster:
UI Improvements and Fixes
## Summary
- add PWA manifest and icons
- register service worker for offline shell + asset caching
- add PWA meta tags
## Testing
- pnpm ui:build (warns: Node v21.7.3 < 22.12.0)
<!-- greptile_comment -->
<h2>Greptile Overview</h2>
<h3>Greptile Summary</h3>
This PR adds Progressive Web App (PWA) support to the UI by introducing a web manifest + PWA icons, adding PWA-related meta tags to `ui/index.html`, and registering a new service worker (`ui/public/sw.js`) from app startup (`ui/src/main.ts` -> `ui/src/pwa.ts`). The service worker implements an install-time core-asset precache and runtime caching for navigations and static assets to enable an offline shell.
<h3>Confidence Score: 3/5</h3>
- Mostly safe to merge, but PWA registration/caching will break under non-root base paths.
- Changes are localized and straightforward, but the current service worker registration URL and precache pathing are inconsistent with typical Vite public asset serving and cache matching semantics; this will cause the PWA/offline behavior to fail in common deployment configurations.
- ui/src/pwa.ts, ui/public/sw.js
<!-- greptile_other_comments_section -->
<sub>(2/5) Greptile learns from your feedback when you react with thumbs up/down!</sub>
<!-- /greptile_comment -->
Most Similar PRs
#7023: feat(ui): inject build SHA fingerprint into index.html
by sergi039 · 2026-02-02
69.4%
#8644: Fix Control UI asset resolution for global installs
by codvik · 2026-02-04
69.2%
#9628: fix: resolve tsconfig rootDir errors by separating UI config (AI-as...
by KGBos · 2026-02-05
69.0%
#7824: fix(ui): remove --prod install flag that causes vite not found error
by adityarao3 · 2026-02-03
67.5%
#9218: Fix Control UI chat resync on gaps and terminal events
by figitaki · 2026-02-05
67.1%
#22808: test(ui): split baseline browser-test fixes from webchat feature
by opnsec · 2026-02-21
67.0%
#10012: Webui voice
by nanxiacc · 2026-02-06
67.0%
#13838: UI: fix config panel CI failures and modularize rendering
by fresed05 · 2026-02-11
67.0%
#9803: fix(#9801): auto-build control ui assets on demand
by dead-pool-aka-wilson · 2026-02-05
66.9%
#11868: control-ui: pairing required guided flow (Clairephone V2 Candidate A)
by shojikumaru · 2026-02-08
66.6%