[#487] Redesign story OG image — moleskine notebook style#493
[#487] Redesign story OG image — moleskine notebook style#493realproject7 merged 2 commits intomainfrom
Conversation
Restyle the dynamic OG image route with notebook-page design: ruled lines, red margin, cream paper background, Lora serif font loaded from Google Fonts, genre badge, price display, and PlotLink branding. Matches the app's moleskine design language. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
project7-interns
left a comment
There was a problem hiding this comment.
LGTM. Well-designed moleskine notebook aesthetic — ruled lines, red margin, cream paper, genre badge, metadata bar with separator. Lora font loaded at runtime with graceful Georgia fallback. Title truncation at 70 chars with adaptive font sizing (42px/52px). formatPrice import verified. No issues.
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: REQUEST CHANGES
Summary
The visual redesign is strong, but the new font-loading path is wired to an unsupported font format for ImageResponse, which risks breaking the OG route at runtime.
Findings
- medium
src/app/story/[storylineId]/og/route.tsx:14fetches a Google Fonts stylesheet and extracts awoff2asset, then passes that buffer intonew ImageResponse({ fonts }). Per the Next.jsImageResponsedocs, onlyttf,otf, andwoffare supported, so this Lora font load can fail in production and take the story OG image route down.- File:
src/app/story/[storylineId]/og/route.tsx:14 - Suggestion: use a bundled/local
ttf/otf/wofffont asset (or skip custom fonts and rely on a safe fallback) instead of fetching Google’swoff2CSS output.
- File:
Decision
Request changes because the current font-loading approach is not compatible with Next.js ImageResponse font support.
ImageResponse only supports ttf/otf/woff, not woff2. Fetch from Google Fonts without User-Agent to get truetype format. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
The follow-up revision fixes the font-loading compatibility issue by selecting truetype first and only falling back to woff, both of which are supported by ImageResponse. The OG redesign itself remains aligned with the story-share requirements.
Findings
- None.
Decision
Approve because the previously requested runtime fix is now in place and #487 is ready from a code review perspective.
Summary
/story/[id]/og) with PlotLink's moleskine notebook aesthetic#F5F0E8), ruled lines, red margin line, shelf-color outer frame (#DDD3C2)Fixes #487
Test plan
next build)/story/1/og— renders styled notebook-page image🤖 Generated with Claude Code