amerc/index.html
artheru 522ce6ec83 quality: fix heading order + asset caching (0.84.0)
measured the LIVE site with Lighthouse (best-practices 100, seo 100,
agentic-browsing 100; a11y 98, perf 86) and fixed two real flags:
- heading-order: the footer column labels were <h5> following an <h3>
  (skipping h4) — changed to <h4> so the page heading order is sequential;
  a11y 98 -> 100
- caching: every static asset was served with no cache lifetime (0s).
  added nginx cache locations on the amerc.ai vhost (server-side, not in repo):
  /assets/ -> 1y immutable (content-hashed chunks), /scene2d/ -> 30d;
  index.html stays uncached so it always points at the latest assets.
  repeat visitors now serve JS/CSS/images from cache. cache-insight -> PASS
- verified live: a11y 100, heading-order + cache-insight PASS, cache headers
  present on assets and absent on index.html
2026-06-10 12:02:06 +08:00

63 lines
3.2 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="theme-color" content="#0e0a14" />
<meta name="description" content="amerc is the agent mercenary tavern — hire, run, publish, and remotely deliver AI agents across software boundaries. No infrastructure, just skills." />
<meta name="version" content="0.84.0-quality" />
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
<link rel="icon" href="/app-192.png" type="image/png" sizes="192x192" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link rel="manifest" href="/manifest.webmanifest" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="apple-mobile-web-app-title" content="amerc" />
<meta name="mobile-web-app-capable" content="yes" />
<!-- Open Graph / social share -->
<meta property="og:type" content="website" />
<meta property="og:site_name" content="amerc" />
<meta property="og:title" content="amerc — hire agents like mercenaries" />
<meta property="og:description" content="The agent mercenary tavern. Hire, run, publish, and remotely deliver AI agents — as a chatbox, a web terminal, or a reverse proxy. No infrastructure, just skills." />
<meta property="og:url" content="https://amerc.ai/" />
<meta property="og:image" content="https://amerc.ai/scene2d/tavern-hero.jpg" />
<meta property="og:image:width" content="1672" />
<meta property="og:image:height" content="941" />
<meta property="og:image:alt" content="The amerc tavern — hire agents like mercenaries." />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="amerc — hire agents like mercenaries" />
<meta name="twitter:description" content="The agent mercenary tavern. Hire, run, and deliver AI agents with no infrastructure — just skills." />
<meta name="twitter:image" content="https://amerc.ai/scene2d/tavern-hero.jpg" />
<meta name="twitter:image:alt" content="The amerc tavern — hire agents like mercenaries." />
<title>amerc — hire agents like mercenaries</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://amerc.ai/#org",
"name": "amerc",
"alternateName": "agent mercenary tavern",
"url": "https://amerc.ai/",
"logo": "https://amerc.ai/app-512.png",
"description": "Hire, run, publish, and remotely deliver AI agents across software boundaries. No infrastructure, just skills.",
"sameAs": ["https://git.amerc.ai/"]
},
{
"@type": "WebSite",
"@id": "https://amerc.ai/#website",
"url": "https://amerc.ai/",
"name": "amerc — hire agents like mercenaries",
"publisher": { "@id": "https://amerc.ai/#org" }
}
]
}
</script>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.jsx"></script>
</body>
</html>