Turns JSON specifications into SVG and PNG images using Satori under the hood. You'd reach for this when building OG image generators, social card systems, or anything that needs programmatic image creation from structured data. Ships with standard components like Frame, Box, Row, Column, and text elements that handle the common layout patterns. The catalog system is designed to work with AI prompts, which makes sense if you're having Claude generate image specs on the fly. Clean separation between server-side definitions and rendering logic through sub-path exports. If you're tired of wrestling with HTML-to-image converters or need deterministic visual output from JSON, this gives you a typed, component-based approach that actually composes well.

skills.sh installs
1.6K
GitHub stars
19.5K
last updated
Aug 21, 2026

Install

$ npx -y skills add vercel-labs/json-render --skill image --agent claude-code

Installs into .claude/skills of the current project.

Files

@json-render/image

Image renderer that converts JSON specs into SVG and PNG images using Satori.

Quick Start

import { renderToPng } from "@json-render/image/render";
import type { Spec } from "@json-render/core";

const spec: Spec = {
  root: "frame",
  elements: {
    frame: {
      type: "Frame",
      props: { width: 1200, height: 630, backgroundColor: "#1a1a2e" },
      children: ["heading"],
    },
    heading: {
      type: "Heading",
      props: { text: "Hello World", level: "h1", color: "#ffffff" },
      children: [],
    },
  },
};

const png = await renderToPng(spec, {
  fonts: [{ name: "Inter", data: fontData, weight: 400, style: "normal" }],
});

Using Standard Components

import { defineCatalog } from "@json-render/core";
import { schema, standardComponentDefinitions } from "@json-render/image";

export const imageCatalog = defineCatalog(schema, {
  components: standardComponentDefinitions,
});

Adding Custom Components

import { z } from "zod";

Sponsors

Details

Repository
github.com/vercel-labs/json-render
Categories
AI & Agent Building, Cloud & Infrastructure
First seen
May 16, 2026

More from vercel-labs/json-render

All 31
1educlopez avatarui-crafteduclopez/ui-craftUse for UI design and implementation work to avoid generic AI-looking interfaces. Provides anti-slop rules, a required discovery phase before coding, and guidan1.6Kskills.sh installs
2cursor avatarpoteto-modecursor/pluginspoteto's agent style for concise, detailed responses, deliberate subagents, unslopped prose, simple code, and verified work.1.6Kskills.sh installs
3alirezarezvani avatarstatusalirezarezvani/claude-skillsShow DAG state, agent progress, and branch status for an AgentHub session. Use when the user runs /hub:status or asks how the AgentHub agents are doing.1.6Kskills.sh installs
4noizai avatartemplate-skillnoizai/skillsReusable template for authoring new Agent Skills with clear triggers, workflow, and I/O contracts.1.6Kskills.sh installs
5bytedance avatarbootstrapbytedance/deer-flowGenerate a personalized SOUL.md through a warm, adaptive onboarding conversation. Trigger when the user wants to create, set up, or initialize their AI partner'1.5Kskills.sh installs
6mksglu avatarctx-insightmksglu/context-modeOpen the context-mode Insight dashboard in your default browser. Insight is the hosted analytics layer for AI-assisted engineering teams — per-engineer producti1.5Kskills.sh installs