One-page corporate site for Quant Mesh Limited (Hong Kong), an AI-compute infrastructure SaaS company. Built as a fast, static, dependency-free microsite optimised for credibility, performance and SEO — suitable for KYB (Know Your Business) verification.
- Vite + TypeScript (no UI framework, zero runtime dependencies)
- Hand-written Canvas2D mesh animation,
IntersectionObserverscroll reveals, CSS transitions — all compositor-friendly andprefers-reduced-motionaware - Design tokens in
oklch; semantic HTML;schema.orgOrganization JSON-LD
npm install
npm run dev # http://localhost:5173
npm run build # type-check + emit static site to dist/
npm run preview # preview the production builddist/ is fully static — deploy to Vercel, Netlify, Cloudflare Pages, or any
object storage / CDN.
index.html # markup + all SEO meta + JSON-LD
public/ # favicon, og-image, robots.txt, sitemap.xml
src/
main.ts # entry — imports CSS, boots modules
content.ts # company constants (single source of truth)
styles/ # tokens.css, global.css, sections.css
components/
nav/ (Nav.ts, nav.css)
hero/ (hero.css)
mesh/ (MeshCanvas.ts)
lib/ # reveal.ts, magnetic.ts, reducedMotion.ts
- Domain: all canonical / OG / sitemap URLs use
https://quantmesh.ai. Updateindex.html,public/robots.txt,public/sitemap.xmlif the live domain differs. - OG image:
og-image.pngis referenced for social sharing. Regenerate frompublic/og-image.svg(export at 1200×630) if you change branding. - Company registration number / incorporation year: intentionally not
published. If you later want to show them, add rows in the Company section of
index.html.
public/media/mesh-bg.mp4(~7 MB): the looping hero background video (glass compute-core). Self-hosted; autoplays muted, loops, pauses off-screen, and is paused entirely underprefers-reduced-motion(the poster shows instead).public/media/mesh-poster.jpg: poster / reduced-motion still for the video.
- Descriptive
<title>+ meta description, canonical, robots meta - Open Graph + Twitter Card tags
schema.orgOrganization+WebSiteJSON-LD (legal name, address, email)robots.txt+sitemap.xml- Semantic landmarks, labelled sections, accessible focus states
- Respects
prefers-reduced-motion(mesh renders one static frame; reveals off) - Mesh animation pauses when the hero scrolls out of view
- Keyboard-navigable nav with skip link; visible focus rings
- No layout-bound animation; only
transform/opacity/filter