**JSON‑Render**
LLMベースの JSON → UI ツール
## Japanese Translation:
```
## 改良された要約
本文では、`@json-render/core` の `createCatalog` を使ってコンポーネントカタログを作成し、完全に機能する Next.js UI を迅速に構築する方法について説明しています。カタログ内で再利用可能なコンポーネントを定義します。例えば:
- **Card** – props: `title`(文字列)、オプションの `description`(nullable 文字列);子要素をサポート。
- **Metric** – props: `label`(文字列)、`valuePath`(JSON‑Pointer 文字列)、`format` (`currency` | `percent`)。
- カタログにオプションで **Chart** コンポーネントも含めることができます。
`export { format }` のようなアクションを追加することも可能です。ユーザーがシステムにプロンプトすると、カタログに制限された JSON ツリーが出力されます。収益ダッシュボードの例としては、次のような出力になるでしょう:
```json
{
"key": "dashboard",
"type": "Card",
"props": {"title":"Revenue Dashboard","description":null},
"children":[{"key":"revenue","type":"Metric","props":{"label":"Total Revenue","valuePath":"/metrics/revenue","format":"currency"}}]
}
```
JSON はストリームが到着するたびに React コードへ段階的にレンダリングされ、UI が更新されます。ガードレールはカタログ化されたコンポーネントのみを使用できるよう保証します。この UI をエクスポートすると、`package.json`、コンポーネントファイル(オプションの Chart も含む)、スタイル、および生成されたもの以外にランタイム依存はない自己完結型の Next.js プロジェクトが作成されます。
二方向データバインディングは、`valuePath` や `dataPath` のような props に対して JSON Pointer パスを使用することで実現します。`export` などの名前付きアクションは、カタログ外側の周囲のアプリケーションロジックで処理されます。プロジェクトを実行または拡張するには、次のコマンドで必要なパッケージをインストールします:
```bash
npm install @json-render/core @json-render/react
```
このワークフローにより、カタログ制約を通じて品質を維持しつつ、ダッシュボードやその他のインターフェースの UI プロトタイピングが迅速化されます。
```