PWA icon and favicon assets are missing - install prompt and tab icon are broken #88

Closed
opened 2026-07-15 19:49:58 +00:00 by claude-bot · 1 comment
Contributor

Severity: High · Confidence: High · Effort: XS · Category: ui

Evidence

  • app/index.html:7-9 references /icons/favicon.svg, /icons/apple-touch-icon.png.
  • app/public/manifest.json:10-24 references /icons/icon-192.png, /icons/icon-512.png.
  • app/public/ contains only manifest.json - there is no icons/ directory anywhere in the repo, and no build step generates one.

Problem
Every icon reference 404s. Browsers commonly refuse "Install app / Add to Home Screen" without valid manifest icons; where they allow it, the installed icon is blank. The tab favicon and iOS home-screen icon are also broken.

Impact
For a PWA whose install-to-home-screen flow is a headline feature (primary user is on her phone), the entry point fails before the app is opened.

Fix
Add the four assets under app/public/icons/.

Acceptance criteria

  • All manifest/index.html icon URLs resolve 200.
  • The install prompt appears and the installed icon renders on iOS and Android.

Related: F-30 (manifest "New Entry" shortcut).


Filed from the 2026-07-15 codebase audit. Full report: docs/.internal/report-2026-07-15.md (gitignored).

**Severity:** High · **Confidence:** High · **Effort:** XS · Category: ui **Evidence** - `app/index.html:7-9` references `/icons/favicon.svg`, `/icons/apple-touch-icon.png`. - `app/public/manifest.json:10-24` references `/icons/icon-192.png`, `/icons/icon-512.png`. - `app/public/` contains only `manifest.json` - there is no `icons/` directory anywhere in the repo, and no build step generates one. **Problem** Every icon reference 404s. Browsers commonly refuse "Install app / Add to Home Screen" without valid manifest icons; where they allow it, the installed icon is blank. The tab favicon and iOS home-screen icon are also broken. **Impact** For a PWA whose install-to-home-screen flow is a headline feature (primary user is on her phone), the entry point fails before the app is opened. **Fix** Add the four assets under `app/public/icons/`. **Acceptance criteria** - [ ] All manifest/index.html icon URLs resolve 200. - [ ] The install prompt appears and the installed icon renders on iOS and Android. Related: F-30 (manifest "New Entry" shortcut). --- _Filed from the 2026-07-15 codebase audit. Full report: `docs/.internal/report-2026-07-15.md` (gitignored)._
Author
Contributor

Fixed in 9a87882 (v7.1.0 wave 1).

Added the four missing assets under app/public/icons/: favicon.svg, apple-touch-icon.png (180×180), and icon-192.png / icon-512.png (full-bleed maskable, leaf-on-green matching the #2e6330 theme). All URLs referenced by index.html and manifest.json now resolve. vite.config.ts has manifest: false (static manifest is authoritative) and the Workbox glob includes png/svg, so the icons are precached. Deployed to dev; CI #3640 green.

Fixed in `9a87882` (v7.1.0 wave 1). Added the four missing assets under `app/public/icons/`: `favicon.svg`, `apple-touch-icon.png` (180×180), and `icon-192.png` / `icon-512.png` (full-bleed maskable, leaf-on-green matching the `#2e6330` theme). All URLs referenced by `index.html` and `manifest.json` now resolve. `vite.config.ts` has `manifest: false` (static manifest is authoritative) and the Workbox glob includes `png`/`svg`, so the icons are precached. Deployed to dev; CI #3640 green.
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
rbrooks/TeaLeaves#88
No description provided.