feat: embeddable CompanyGame with loader, poster, no-WebGL fallback and SEO
CI/CD / test (push) Successful in 1m10s
CI/CD / publish (push) Successful in 1m20s
CI/CD / deploy (push) Successful in 6s

- CompanyGame bundles the store, a branded loader with start-up progress, an optional
  light poster (Enter the game) and a company-info fallback when WebGL is missing.
- startMode prop and ?mode= start straight in a mode; ?poster shows the poster first.
- Pixel ratio capped at 1.5 on touch devices and 1.75 on desktop (constants/graphics.js).
- Build writes the title, description, Organization JSON-LD and a hidden Persian
  summary into index.html from the company config.
- README explains iframe and component embedding.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-31 13:26:30 +03:00
co-authored by Claude Opus 5.5
parent 53caa0a208
commit bc6f472f08
19 changed files with 423 additions and 40 deletions
+3 -5
View File
@@ -4,11 +4,8 @@
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover" />
<meta name="theme-color" content="#0b1614" />
<title>عملیات مشهد | روبات مارکت</title>
<meta
name="description"
content="از کارخانهٔ روبات مارکت تا بوستان ملت: دستگاه‌های وندینگ را در مشهد پیدا کن و امتیاز بگیر."
/>
<!-- Title, description and structured data come from the company config (vite.config.js). -->
<!--seo-head-->
<meta name="mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
@@ -18,6 +15,7 @@
<link rel="apple-touch-icon" href="./icons/apple-touch-icon.png" />
</head>
<body>
<!--seo-summary-->
<div id="root"></div>
<script type="module" src="/src/main.jsx"></script>
</body>