AMA Open Graph Image Template
A dark AMA card with a guest avatar, title, name line, and date chip.
A dark AMA card with a guest avatar, title, name line, and date chip.
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 AMA template for community question sessions and office hours. It leads with the words ask me anything at display size so the format is unmistakable, then grounds the session in the guest: their avatar, name, and role sit along the foot with the date chip up in the corner. It gives every session a consistent card in your community feed.
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 session 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 avatar is an initials tile drawn in code, so no photo needs to load at render time.
Install with the shadcn CLI using your Shadcn UI Blocks API key:
npx shadcn@latest add @shadcn-ui-blocks/og-image-community-ama
The file lands at app/opengraph-image.tsx, which makes it the site wide share card. For a dedicated session page, move it into that segment instead, for example app/community/ama/[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.
The content object holds the brand, the title, the guest initials, guest name, and role, the date chip, and the url. The initials string fills the round tile, so keep it to two letters for balance. For a real headshot, replace the initials tile with an img element pointing at an absolute URL and satori will fetch it at render time. Feed each session its date and guest through params on the default export if you host them under one segment.
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.