image
JSON仕様をSatorを通じてSVGおよびPNG画像に変換する、json-render向けの画像レンダラーです。`@json-render/image`の利用時、JSONからOG画像の生成、ソーシャルカードの作成、AIが生成した画像仕様のレンダリングに活用できます。
description の原文を見る
Image renderer for json-render that turns JSON specs into SVG and PNG images via Satori. Use when working with @json-render/image, generating OG images from JSON, creating social cards, or rendering AI-generated image specs.
SKILL.md 本文
@json-render/image
JSON スペックを Satori を使用して SVG および PNG 画像に変換する画像レンダラー。
クイックスタート
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" }],
});
標準コンポーネントの使用
import { defineCatalog } from "@json-render/core";
import { schema, standardComponentDefinitions } from "@json-render/image";
export const imageCatalog = defineCatalog(schema, {
components: standardComponentDefinitions,
});
カスタムコンポーネントの追加
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",
},
},
});
標準コンポーネント
| コンポーネント | カテゴリ | 説明 |
|---|---|---|
Frame | ルート | ルートコンテナ。幅、高さ、背景を定義。ルートである必要があります。 |
Box | レイアウト | パディング、マージン、ボーダー、絶対位置を持つコンテナ |
Row | レイアウト | 水平 flex レイアウト |
Column | レイアウト | 垂直 flex レイアウト |
Heading | コンテンツ | h1-h4 見出しテキスト |
Text | コンテンツ | フルスタイリング機能付きのボディテキスト |
Image | コンテンツ | URL からの画像 |
Divider | 装飾 | 水平線区切り |
Spacer | 装飾 | 空の垂直スペース |
主なエクスポート
| エクスポート | 目的 |
|---|---|
renderToSvg | スペックを SVG 文字列にレンダリング |
renderToPng | スペックを PNG バッファにレンダリング (@resvg/resvg-js が必要) |
schema | 画像要素スキーマ |
standardComponents | 事前構築されたコンポーネントレジストリ |
standardComponentDefinitions | AI プロンプト用のカタログ定義 |
サブパスエクスポート
| エクスポート | 説明 |
|---|---|
@json-render/image | フルパッケージ: スキーマ、コンポーネント、レンダリング関数 |
@json-render/image/server | スキーマとカタログ定義のみ (React/Satori なし) |
@json-render/image/catalog | 標準コンポーネント定義とタイプ |
@json-render/image/render | レンダリング関数のみ |
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- vercel-labs
- ライセンス
- Apache-2.0
- 最終更新
- 不明
Source: https://github.com/vercel-labs/json-render / ライセンス: Apache-2.0
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。