Beautiful OG images with zero design effort.

Declarative templates, Puppeteer-powered rendering. Generate stunning social cards in seconds.

og.ts
import { generateOG } from '@arach/og'

await generateOG({
  template: 'branded',
  title: 'My Awesome Project',
  subtitle: 'Build something amazing',
  accent: '#f07c4f',
  output: 'public/og.png'
})

Try it now

No install needed. Just run it.

$ bunx @arach/og viewer

Opens a local preview of your OG images. No install needed.

Pick a template

Four beautiful templates out of the box. Or create your own.

Branded template
branded
Full-featured with gradient glows and grid overlay
Minimal template
minimal
Clean and centered, perfect for simple projects
Docs template
docs
Designed for documentation pages
Editor Dark template
editor-dark
Dark theme for products and apps

Powerful CLI

Generate, validate, and audit OG images from the command line.

bunx @arach/og config.json

Generate OG images from a JSON config file. Supports single or batch generation.

bunx @arach/og validate <url>

Check a URL's OG tags. Validates title, description, image size, and dimensions.

bunx @arach/og audit <url>

Audit an entire site via sitemap. Get a full report of OG coverage across all pages.

bunx @arach/og viewer

Launch a local viewer to preview your OG inventory with social platform mockups.

Declarative API

Configure your OG images with simple JavaScript objects. No design tools needed.

Puppeteer Rendering

High-fidelity rendering with full CSS support. What you see is what you get.

Site-wide Auditing

Audit your entire site's OG tags via sitemap. Catch issues before you ship.

Local Viewer

Preview OG images locally with social platform mockups before deploying.

Batch Generation

Generate multiple images at once. Perfect for blogs and documentation.

Google Fonts

Load any Google Font automatically. Beautiful typography built-in.