Library release Open Graph Image Template
A dark library card with a version pill, install pill, and highlights.
A dark library card with a version pill, install pill, and highlights.
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
Use the Library release template for the post that ships a new version to npm. It leads with the package name and a version badge, states the release in a headline, backs it with two highlights, and closes on an install pill, the shape of a release note a package author writes every few weeks.
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 the release page 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 install command sits in its own pill at the foot, so the one action you want a reader to take is the last thing they see.
Install with the shadcn CLI using your Shadcn UI Blocks API key:
npx shadcn@latest add @shadcn-ui-blocks/og-image-library-release
The file lands at app/opengraph-image.tsx, which makes it the site wide share card. Move it into the release segment, for example app/releases/[version]/opengraph-image.tsx, when each version gets its own page. 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.
The content object holds the package name, the version badge, the title, the highlights array, the install command, and the url. The layout is built for two highlights; keep each to one line so the pair stays balanced against the title. To publish a card per release, read your package.json version and changelog in the default export and feed them straight in. The title reads best across two lines at its 66px size.
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.