Add mobile responsiveness, SEO meta tags, and dynamic OG images#49
Merged
Conversation
…hare pages (#49) - Make /d/{token} share pages fully SEO-friendly: inject dynamic title, description, Open Graph, Twitter Card, canonical link, and site favicon into the server-rendered HTML per diagnostic - Add /og/{token}.png endpoint that generates a 1200×630 OG image via Satori + resvg-wasm (favicon, site name, health score, summary) and caches the result in R2 - Fix mobile overflow: add overflow-wrap to report prose, min-w-0 to ScoreCard summary, overflow-x:auto table wrapper in react-markdown, and responsive URL/title truncation - Redesign ScoreCard: replace animated SVG ring with score number in top-right corner for a simpler, mobile-friendly layout Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
site-diagnostics | 2170200 | May 12 2026, 03:46 AM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/d/{token}share pages now inject dynamic<title>,<meta description>, Open Graph, Twitter Card, canonical link, and the diagnosed site's favicon server-side — social crawlers get real metadata instead of the generic "MCP App" defaults/og/{token}.pngendpoint generates a 1200×630 branded card (Satori + resvg-wasm) showing favicon, site name, health score, and summary; result is cached in R2 so subsequent requests are instantoverflow-wrap: break-word,min-w-0on ScoreCard summary,overflow-x:autotable wrapper), responsive URL/title truncation (max-w-[200px] sm:max-w-[340px]), and simplified ScoreCard layout (score number top-right, no SVG ring)Test plan
/d/{token}URL and confirmog:title,og:image,<link rel="icon">are present with the site's actual name/og/{token}.pngdirectly in the browser to verify the generated image rendersdevelopers.facebook.com/tools/debug/orcards-dev.x.com/validatorto preview a share card end-to-end🤖 Generated with Claude Code
Summary by cubic
Adds dynamic SEO metadata and a cached OG image generator for share pages, and improves mobile layout to prevent overflow and simplify the ScoreCard.
/d/{token}: server injects dynamic<title>, meta description, Open Graph, Twitter Card, canonical link, and the diagnosed site's favicon./og/{token}.pngrenders a 1200×630 card (favicon, site name, health score, summary) usingsatori+@resvg/resvg-wasm, cached in R2 with immutable long‑term headers.Written for commit 2170200. Summary will update on new commits.