Skip to content

Commit c682af2

Browse files
committed
feat: per-repo social metadata — SSR share pages + dynamic OG images
Crawler-visible metadata for /repos/:owner/:name without turning the SPA into an SSR app: a Vercel function fetches the built index.html, swaps the marker-delimited social-meta block for repo-specific tags, and a sibling function renders per-repo OG cards with @vercel/og (JetBrains Mono TTFs; Satori can't consume WOFF2). Private repos and upstream errors always get the generic site metadata plus noindex — repository data is never interpolated on those paths. The client hook keeps document meta in sync during SPA navigation, and the /api proxy narrows to /api/v1 so local functions are reachable. Cache tiers: immutable versioned OG URLs, 5m/1h SWR for pages, no-store on errors.
1 parent 2ec020a commit c682af2

22 files changed

Lines changed: 2900 additions & 15 deletions

‎.gitignore‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,4 @@ dist-ssr
2323
*.sln
2424
*.sw?
2525
.vercel
26+
.playwright-cli

0 commit comments

Comments
 (0)