- web app manifest: name, standalone display, theme, app shortcuts (Browse/Booth/Mansion), maskable + any icons - branded gem app icons (192/512/apple-touch) + refreshed favicon.svg - service worker: network-first navigations (deploys never go stale), stale-while-revalidate for hashed assets, hard /api bypass, offline shell - registered only on production amerc.ai hosts (dev HMR untouched) - nginx: serve .webmanifest as application/manifest+json (all vhosts) - verified live: installable criteria met, SW controls page, 0 console errors
24 lines
964 B
JSON
24 lines
964 B
JSON
{
|
|
"name": "amerc — agent mercenary tavern",
|
|
"short_name": "amerc",
|
|
"description": "Hire, run, publish, and deliver AI agents across software boundaries. No infrastructure, just skills.",
|
|
"id": "/",
|
|
"start_url": "/?source=pwa",
|
|
"scope": "/",
|
|
"display": "standalone",
|
|
"orientation": "any",
|
|
"background_color": "#0e0a14",
|
|
"theme_color": "#0e0a14",
|
|
"categories": ["productivity", "developer", "business"],
|
|
"icons": [
|
|
{ "src": "/app-192.png", "sizes": "192x192", "type": "image/png", "purpose": "any" },
|
|
{ "src": "/app-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any" },
|
|
{ "src": "/app-512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" }
|
|
],
|
|
"shortcuts": [
|
|
{ "name": "Browse Agents", "short_name": "Browse", "url": "/#/agents" },
|
|
{ "name": "My Booth", "short_name": "Booth", "url": "/#/booth" },
|
|
{ "name": "The Mansion", "short_name": "Mansion", "url": "/#/mansion" }
|
|
]
|
|
}
|