Article dark Open Graph Image Template
A dark editorial card with a category chip, headline, summary, and byline.
A dark editorial card with a category chip, headline, summary, and byline.
Every Open Graph image template is included with Basic and Pro. Pick a plan to copy the code, install with the CLI, and download the raw SVG.
Already purchased? Log in
Reach for the Article dark template when an editorial blog wants a share card with real weight. It leads with the headline on a near black ground, backs it with a one line summary, and closes with an author byline, the date, and the reading time beside your blog address.
This template is a metadata image route for the Next.js App Router. The file exports size, contentType, and alt values plus a default async function that returns an ImageResponse. When a page in the segment is shared, satori converts the JSX into an SVG document, the runtime rasterizes that SVG into a 1200 by 630 PNG, and Next.js serves the result and wires the og:image and twitter:image tags into the page head automatically. The layout pins the brand row to the top and the byline to the bottom, so a longer headline just grows into the space between them.
Install with the shadcn CLI using your Shadcn UI Blocks API key:
npx shadcn@latest add @shadcn-ui-blocks/og-image-article-dark
The file lands at app/opengraph-image.tsx, which makes it the site wide share card. For a blog you will usually move it into the post segment instead, for example app/blog/[slug]/opengraph-image.tsx. You can also copy the code from this page straight into your project.
The card renders text with Inter, read from assets/fonts at your project root with node:fs so the font files never ship to the browser. Download the latin woff files for weights 400, 500, 600, and 700 from Fontsource and save them as assets/fonts/inter-latin-400-normal.woff and so on.
Everything editable sits in the content object at the top of the file: brand for the logo row, the category chip, the title, the description summary, and the byline built from author, meta, initials, and url. To generate a card per post, accept params in the default export, look up the post the way the page does, and feed its frontmatter in. The title holds about two lines at 66px before it crowds the byline, and meta carries the date and reading time.
satori supports a focused subset of CSS: flexbox layout only, flat colors, and an explicit display: flex on any element with multiple children. Keep those rules in mind if you rework the layout.