Claude-skill-registry favicon-pwa
Set up favicon and PWA manifest for website projects. Creates favicon.ico, apple-touch-icon, and site.webmanifest. Use at project end before release. Triggers on "favicon", "PWA", "manifest", "app icon".
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/favicon-pwa" ~/.claude/skills/majiayu000-claude-skill-registry-favicon-pwa && rm -rf "$T"
manifest:
skills/data/favicon-pwa/SKILL.mdsource content
Favicon & PWA Setup
Create favicon set and PWA manifest for professional web presence.
Workflow
- Get brand colors from globals.css
- Create/request favicon source (512x512 PNG or SVG)
- Generate favicon variants
- Create site.webmanifest
- Add to app/layout.tsx
Required Files
Favicon Set
| File | Size | Location |
|---|---|---|
| favicon.ico | 16x16, 32x32, 48x48 | app/favicon.ico |
| apple-touch-icon.png | 180x180 | public/apple-touch-icon.png |
| icon-192.png | 192x192 | public/icon-192.png |
| icon-512.png | 512x512 | public/icon-512.png |
site.webmanifest
Create at
public/site.webmanifest:
{ "name": "[Business Name]", "short_name": "[Short Name]", "icons": [ { "src": "/icon-192.png", "sizes": "192x192", "type": "image/png" }, { "src": "/icon-512.png", "sizes": "512x512", "type": "image/png" } ], "theme_color": "[primary color from globals.css]", "background_color": "[background color from globals.css]", "display": "standalone", "start_url": "/" }
Layout Integration
Add to
app/layout.tsx metadata:
export const metadata: Metadata = { icons: { icon: '/favicon.ico', apple: '/apple-touch-icon.png', }, manifest: '/site.webmanifest', }
Checklist
- favicon.ico created (multi-size)
- apple-touch-icon.png created (180x180)
- icon-192.png and icon-512.png created
- site.webmanifest created with correct colors
- Layout metadata updated
- Favicon displays in browser tab