OGIS

Social cards from a URL.

Put a title and a few details in the query string. OGIS renders a 1200 × 630 card at the edge, and your CDN keeps it.

Playground

Edit any field. The preview follows as you type.

OG Preview
Rendering…
Theme

Bitmap type over your cover image. The original OGIS look.

Text
Details
Images

PNG, JPEG, GIF or SVG from a public host. Anything else is left out. Without a cover, Pixel, Modern and Gallery use a starfield.

Colours the tag, or what the theme is built around: the pen in Postcard, the wall in Gallery, the sheet in Blueprint. Leave empty for the theme default.

API

One GET request that returns a PNG. Every parameter is optional.

GET /api/og
  ?title=Interstellar
  &site=buxx.me
  &theme=editorial
Integration guides for Ghost, Next.js, Astro and Hugo
ParameterDescriptionMax
Text
titleHeadline. Defaults to “Untitled”.200
siteSite or publication name. Defaults to “Blog”.80
excerptA line or two under the title.300
authorByline.80
dateShown as written, e.g. Jan 5, 2026.40
readingReading time, e.g. 5 min read.40
tagCategory or kicker.40
Appearance
themepixel, modern, editorial, swiss, terminal, gallery, postcard, bauhaus, blueprint or oil. Anything else falls back to pixel.
accentHex colour, with or without #. Colours the tag, or the wall, ink, sheet or lead colour in the themes built around one.
pixelFontzpix, or geist-square, -circle, -line, -triangle, -grid. Pixel theme only.
Images
imageCover image. Every theme uses it its own way, from a full-bleed background to a postcard stamp.
iconSite icon beside the site name.
avatarAuthor photo beside the byline.

Images

Fetched by the server from public hosts only: up to 6 MB, PNG, JPEG, GIF or SVG. An image that fails is left out, never an error.

Caching

Fresh at the CDN for a day, then served stale for up to a week while it re-renders.

Self-hosting

One click on Vercel, or one docker run on your own server. Set OG_API_ONLY=true to hide this page.