Skip to content

Add custom header/OG images to all 5 blog posts - #239

Closed
V-Figueroa wants to merge 1 commit into
mainfrom
content/blog-post-images
Closed

Add custom header/OG images to all 5 blog posts#239
V-Figueroa wants to merge 1 commit into
mainfrom
content/blog-post-images

Conversation

@V-Figueroa

Copy link
Copy Markdown
Collaborator

Summary

Every blog post now has its own on-brand banner + social-share image, instead of all posts sharing the site-wide generic og-image.png — the original problem behind "every post imports with the same image."

  • Each post gets two images at public/images/blog/<slug>/: og.png (1200×630, social/Google preview) and header.png (1600×640, shown inline inside the post itself).
  • Resized down from the @2x source exports (2–3.5MB each) to actual display size before committing — now ~500–650KB each, in line with the existing default og-image.png's footprint.
  • og.png uses the image field on BlogPostFrontmatter that was already wired to og:image/twitter:image/JSON-LD in the previous OG-meta PR — no new plumbing needed there.
  • header.png uses a new optional headerImage field, rendered inline inside the post's title card in BlogPostPage.tsx (there was no image slot there before).
  • Design: gradient background in the site's brand palette, the real Statewave diamond mark, and a small UI-mockup diagram distinct per post's topic — consistent template, no baked-in title text (avoids duplicating the real og:title/<h1>, which already render as text).

Test plan

  • npm run build green
  • Verified og:image meta + the inline <img> tag both resolve to the right per-post file in the generated HTML
  • Visual check of all 5 posts (and the width match against the title card) before merging

Each post now has its own on-brand banner + social card instead of
sharing the site-wide default og-image.png — the original problem
Kai-Uwe flagged (every post importing with the same generic image).

- Adds headerImage (optional) alongside the existing image field in
  BlogPostFrontmatter — image feeds og:image/twitter:image/JSON-LD
  (already wired), headerImage is new: rendered inline inside the
  post's title card in BlogPostPage.tsx, which had no image slot before.
- Images resized from the 2x/@retina source files (2-3.5MB each) down
  to their actual display size (1200x630 / 1600x640, ~500-650KB each)
  before committing, in line with the existing og-image.png's footprint.
- public/images/blog/<slug>/{og,header}.png per post.
@V-Figueroa
V-Figueroa requested a review from smaramwbc August 10, 2026 14:38
@vercel

vercel Bot commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
statewave-web Ready Ready Preview Aug 10, 2026 2:38pm

Request Review

smaramwbc pushed a commit that referenced this pull request Aug 10, 2026
Four page and content additions, landed together:

- /benchmarks — LoCoMo and LongMemEval results for Statewave, mem0 cloud and
  mem0 OSS, run in-harness with a shared gpt-4o judge; numbers trace to the
  statewave-memory-benchmarks repo.
- /vs/mem0 — comparison page: deterministic, token-bounded context assembly
  with policy enforcement and receipts vs. ranked similarity retrieval.
- /use-cases/grounded-shop-assistant — use-case page for the grounded shop
  assistant reference build (links smaramwbc/statewave-grounded-shop-assistant).
- Custom header and OG images for all five blog posts.

Combined from PRs #226, #228, #235 and #239 (see those PRs for the full
per-change history and discussion).
@smaramwbc

Copy link
Copy Markdown
Owner

Shipped 🎉 — this landed on main via #237 (squashed as 5d76012) together with the three page PRs. All five posts now ship custom header + OG images, and thanks to the per-post OG machinery from #225 the social cards pick them up automatically. Thanks! Closing since the content is merged.

@smaramwbc smaramwbc closed this Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants