# SEO/AEO Performance Improvements Design ## Goal Improve the homepage's initial rendering, LCP path, canonical metadata, and documentation crawl hygiene using the existing web, server, and Mintlify seams. ## Scope This change will: - Exclude the application bootstrap module from Cloudflare Rocket Loader rewriting. - Replace the homepage's initial autoplay video load with a high-priority poster and interaction-triggered video load. - Serve versioned homepage media with long-lived immutable caching. - Put complete root-page canonical, social, and JSON-LD metadata in the initial HTML response. - Move the documentation introduction to `/getting-started` and redirect confirmed historical paths. This change will not: - Add SSR, prerendering, a shared SEO package, special AEO schema, or `llms.txt` work. - Change noindex behavior for auth, dashboard, builder, settings, templates, or public resume routes. - Add redirects for unconfirmed LinkedIn, AI-provider, v4, or placeholder URLs. - Change homepage animation or overlay code without an interaction-performance profile. - Change the Cloudflare zone-wide Rocket Loader setting from repository code. - Claim field LCP or GSC validation before post-deployment field data is available. ## Approach Use the existing ownership seams: - `apps/web/index.html` owns the bootstrap script attribute. - `apps/web/src/routes/_home/-sections/hero.tsx` owns homepage media behavior. - `apps/server/src/static/web.ts` owns root HTML transformation and static response headers. - `docs/docs.json` and the documentation source files own canonical documentation paths. The server will keep serving the same client application shell. Only requests whose pathname is `/` will receive root SEO markup, so tracking parameters such as `/?utm_source=...` consolidate to the root canonical without leaking root metadata into noindex application shells. ## Homepage boot and media The module script in `apps/web/index.html` will place `data-cfasync="false"` before `src`, which is the Cloudflare-supported per-script Rocket Loader exclusion. The current media will become: - `/videos/timelapse-v1.webp`: a representative poster extracted from the existing video. - `/videos/timelapse-v1.mp4`: the existing video under a versioned filename. The homepage route will preload the poster as an image with `fetchpriority="high"`. The hero will render a native `