image

von vercel

Bildrenderer für json-render, der JSON-Spezifikationen über Satori in SVG- und PNG-Bilder umwandelt. Verwenden Sie dies bei der Arbeit mit @json-render/image, beim Generieren von OG-Bildern aus…

npx skills add https://github.com/vercel-labs/json-render --skill image

@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";

const catalog = defineCatalog(schema, {
  components: {
    ...standardComponentDefinitions,
    Badge: {
      props: z.object({ label: z.string(), color: z.string().nullable() }),
      slots: [],
      description: "A colored badge label",
    },
  },
});

Standard Components

ComponentCategoryDescription
FrameRootRoot container. Defines width, height, background. Must be root.
BoxLayoutContainer with padding, margin, border, absolute positioning
RowLayoutHorizontal flex layout
ColumnLayoutVertical flex layout
HeadingContenth1-h4 heading text
TextContentBody text with full styling
ImageContentImage from URL
DividerDecorativeHorizontal line separator
SpacerDecorativeEmpty vertical space

Key Exports

ExportPurpose
renderToSvgRender spec to SVG string
renderToPngRender spec to PNG buffer (requires @resvg/resvg-js)
schemaImage element schema
standardComponentsPre-built component registry
standardComponentDefinitionsCatalog definitions for AI prompts

Sub-path Exports

ExportDescription
@json-render/imageFull package: schema, components, render functions
@json-render/image/serverSchema and catalog definitions only (no React/Satori)
@json-render/image/catalogStandard component definitions and types
@json-render/image/renderRender functions only

Mehr Skills von vercel

vercel
vercel
Emulierte Vercel-REST-API für lokale Entwicklung und Tests. Verwenden, wenn der Benutzer lokal mit Vercel-API-Endpunkten interagieren, Vercel-Integrationen testen,…
cron-jobs
vercel
Vercel Cron Jobs Konfiguration und Best Practices. Verwenden beim Hinzufügen, Bearbeiten oder Debuggen geplanter Aufgaben in vercel.json.
codegen
vercel
Codegenerierungs-Hilfsprogramme für json-render. Verwenden Sie diese beim Generieren von Code aus UI-Spezifikationen, beim Erstellen benutzerdefinierter Code-Exporteure, beim Durchlaufen von Spezifikationen oder beim Serialisieren von Eigenschaften für…
next-best-practice
vercel
Next.js Best Practices - Dateikonventionen, RSC-Grenzen, Datenmuster, asynchrone APIs, Metadaten, Fehlerbehandlung, Routen-Handler, Bild-/Schriftoptimierung,…
benchmark-sandbox
vercel
Führt vercel-plugin-eval-Szenarien in Vercel Sandboxes aus, anstatt in lokalen WezTerm-Panels. Stellt temporäre Mikro-VMs mit vorinstalliertem Claude Code + Plugin bereit,…
write-guide
vercel
Erstelle eine technische Anleitung, die einen realen Anwendungsfall durch progressive Beispiele vermittelt. Konzepte werden nur dann eingeführt, wenn der Leser sie benötigt.
benchmark-testing
vercel
Erstelle und starte Benchmark-Testprojekte, um die vercel-plugin-Skill-Injektion in realistischen Szenarien zu testen. Richtet isolierte Verzeichnisse ein, installiert die…
ai-gateway
vercel
Vercel AI Gateway Expertenanleitung. Verwenden Sie bei der Konfiguration von Modell-Routing, Anbieter-Failover, Kostenverfolgung oder der Verwaltung mehrerer KI-Anbieter über eine einheitliche…