Compare commits

..
Author SHA1 Message Date
Chris Tate 09488c395c fix workflow 2026-03-12 12:03:11 -05:00
Chris Tate ce7caa418c faster ci 2026-03-12 10:22:54 -05:00
76 changed files with 87 additions and 383 deletions
+16
View File
@@ -0,0 +1,16 @@
---
"@json-render/core": minor
"@json-render/solid": minor
"@json-render/react-three-fiber": minor
---
Add SolidJS and React Three Fiber renderers, plus strict JSON Schema mode for LLM structured outputs.
### New:
- **`@json-render/solid`** -- SolidJS renderer. JSON becomes Solid components with reactive rendering, schema export, and full catalog support.
- **`@json-render/react-three-fiber`** -- React Three Fiber renderer. JSON becomes 3D scenes with 19 built-in components for meshes, lights, models, environments, text, cameras, and controls.
### Improved:
- **`@json-render/core`** -- `jsonSchema({ strict: true })` produces a JSON Schema subset compatible with LLM structured output APIs (OpenAI, Google Gemini, Anthropic). Ensures `additionalProperties: false` on every object and all properties listed in `required`.
+34 -25
View File
@@ -13,34 +13,43 @@ concurrency:
cancel-in-progress: true
jobs:
ci:
name: Lint, Type Check & Build
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "pnpm"
cache: pnpm
- run: pnpm install --frozen-lockfile
- run: pnpm lint
- name: Install dependencies
run: pnpm install --frozen-lockfile
test:
name: Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- run: pnpm install --frozen-lockfile
- name: Build packages
run: pnpm turbo run build --filter='./packages/*'
- run: pnpm test
- name: Lint
run: pnpm lint
- name: Type check
run: pnpm type-check
- name: Test
run: pnpm test
- name: Build
run: pnpm build
typecheck:
name: Type Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- run: pnpm install --frozen-lockfile
- run: pnpm type-check
-9
View File
@@ -1,14 +1,5 @@
# web
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/codegen@0.13.0
- @json-render/react@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "web",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"license": "Apache-2.0",
-9
View File
@@ -1,14 +1,5 @@
# example-chat
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react@0.13.0
- @json-render/shadcn@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-chat",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"scripts": {
-9
View File
@@ -1,14 +1,5 @@
# example-dashboard
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/codegen@0.13.0
- @json-render/react@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-dashboard",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"scripts": {
-8
View File
@@ -1,13 +1,5 @@
# example-image
## 0.1.4
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/image@0.13.0
## 0.1.3
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-image",
"version": "0.1.4",
"version": "0.1.3",
"type": "module",
"private": true,
"scripts": {
-10
View File
@@ -1,15 +1,5 @@
# example-mcp
## 0.1.3
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/mcp@0.13.0
- @json-render/react@0.13.0
- @json-render/shadcn@0.13.0
## 0.1.2
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-mcp",
"version": "0.1.3",
"version": "0.1.2",
"type": "module",
"private": true,
"scripts": {
-9
View File
@@ -1,14 +1,5 @@
# example-no-ai
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react@0.13.0
- @json-render/shadcn@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-no-ai",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"scripts": {
-8
View File
@@ -1,13 +1,5 @@
# example-react-email
## 0.1.3
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react-email@0.13.0
## 0.1.2
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-react-email",
"version": "0.1.3",
"version": "0.1.2",
"type": "module",
"private": true,
"scripts": {
-8
View File
@@ -1,13 +1,5 @@
# example-react-native
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react-native@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-react-native",
"version": "0.1.7",
"version": "0.1.6",
"private": true,
"main": "expo-router/entry",
"scripts": {
-8
View File
@@ -1,13 +1,5 @@
# example-react-pdf
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react-pdf@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-react-pdf",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"scripts": {
-10
View File
@@ -1,10 +0,0 @@
# example-react-three-fiber
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react-three-fiber@0.13.0
- @json-render/react@0.13.0
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-react-three-fiber",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"scripts": {
-8
View File
@@ -1,13 +1,5 @@
# example-remotion
## 0.1.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/remotion@0.13.0
## 0.1.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-remotion",
"version": "0.1.7",
"version": "0.1.6",
"type": "module",
"private": true,
"scripts": {
-9
View File
@@ -1,9 +0,0 @@
# example-solid
## 0.1.1
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/solid@0.13.0
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-solid",
"version": "0.1.1",
"version": "0.1.0",
"private": true,
"type": "module",
"scripts": {
@@ -1,13 +1,5 @@
# com.example.json-render-demo
## 0.0.8
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react@0.13.0
## 0.0.7
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "com.example.json-render-demo",
"version": "0.0.8",
"version": "0.0.7",
"description": "Test",
"private": true,
"license": "~~proprietary~~",
@@ -1,13 +1,5 @@
# com.example.json-render-fullpage-demo
## 0.0.8
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react@0.13.0
## 0.0.7
### Patch Changes
@@ -1,6 +1,6 @@
{
"name": "com.example.json-render-fullpage-demo",
"version": "0.0.8",
"version": "0.0.7",
"description": "Full-page Stripe App example (alpha)",
"private": true,
"license": "~~proprietary~~",
-8
View File
@@ -1,13 +1,5 @@
# svelte-chat
## 0.0.4
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/svelte@0.13.0
## 0.0.3
### Patch Changes
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "svelte-chat",
"private": true,
"version": "0.0.4",
"version": "0.0.3",
"type": "module",
"scripts": {
"dev": "vite dev",
-8
View File
@@ -1,13 +1,5 @@
# example-svelte
## 0.1.4
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/svelte@0.13.0
## 0.1.3
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-svelte",
"version": "0.1.4",
"version": "0.1.3",
"private": true,
"type": "module",
"scripts": {
-11
View File
@@ -1,16 +1,5 @@
# vite-renderers
## 0.1.5
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/solid@0.13.0
- @json-render/react@0.13.0
- @json-render/svelte@0.13.0
- @json-render/vue@0.13.0
## 0.1.4
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "vite-renderers",
"version": "0.1.5",
"version": "0.1.4",
"private": true,
"type": "module",
"scripts": {
-8
View File
@@ -1,13 +1,5 @@
# example-vue
## 0.1.5
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/vue@0.13.0
## 0.1.4
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-vue",
"version": "0.1.5",
"version": "0.1.4",
"private": true,
"scripts": {
"predev": "command -v portless >/dev/null 2>&1 || (echo '\\nportless is required but not installed. Run: npm i -g portless\\nSee: https://github.com/vercel-labs/portless\\n' && exit 1)",
-7
View File
@@ -1,12 +1,5 @@
# @json-render/codegen
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/codegen",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Utilities for generating code from json-render UI trees",
"keywords": [
-13
View File
@@ -1,18 +1,5 @@
# @json-render/core
## 0.13.0
### Minor Changes
- 5b32de8: Add SolidJS and React Three Fiber renderers, plus strict JSON Schema mode for LLM structured outputs.
### New:
- **`@json-render/solid`** -- SolidJS renderer. JSON becomes Solid components with reactive rendering, schema export, and full catalog support.
- **`@json-render/react-three-fiber`** -- React Three Fiber renderer. JSON becomes 3D scenes with 19 built-in components for meshes, lights, models, environments, text, cameras, and controls.
### Improved:
- **`@json-render/core`** -- `jsonSchema({ strict: true })` produces a JSON Schema subset compatible with LLM structured output APIs (OpenAI, Google Gemini, Anthropic). Ensures `additionalProperties: false` on every object and all properties listed in `required`.
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/core",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "JSON becomes real things. Define your catalog, register your components, let AI generate.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/image
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/image",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Image renderer for @json-render/core. JSON becomes SVG and PNG images via Satori.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/jotai
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/jotai",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Jotai adapter for json-render StateStore",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/mcp
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/mcp",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "MCP Apps integration for @json-render/core. Serve json-render UIs as interactive MCP Apps in Claude, ChatGPT, Cursor, and VS Code.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/react-email
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/react-email",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "React Email renderer for @json-render/core. JSON becomes HTML emails.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/react-native
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/react-native",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "React Native renderer for @json-render/core. JSON becomes React Native components.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/react-pdf
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/react-pdf",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "React PDF renderer for @json-render/core. JSON becomes PDF documents.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @internal/react-state
## 0.8.7
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.8.6
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@internal/react-state",
"version": "0.8.7",
"version": "0.8.6",
"private": true,
"license": "Apache-2.0",
"description": "Shared React state context for json-render renderer packages",
-20
View File
@@ -1,20 +0,0 @@
# @json-render/react-three-fiber
## 0.13.0
### Minor Changes
- 5b32de8: Add SolidJS and React Three Fiber renderers, plus strict JSON Schema mode for LLM structured outputs.
### New:
- **`@json-render/solid`** -- SolidJS renderer. JSON becomes Solid components with reactive rendering, schema export, and full catalog support.
- **`@json-render/react-three-fiber`** -- React Three Fiber renderer. JSON becomes 3D scenes with 19 built-in components for meshes, lights, models, environments, text, cameras, and controls.
### Improved:
- **`@json-render/core`** -- `jsonSchema({ strict: true })` produces a JSON Schema subset compatible with LLM structured output APIs (OpenAI, Google Gemini, Anthropic). Ensures `additionalProperties: false` on every object and all properties listed in `required`.
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react@0.13.0
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/react-three-fiber",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "React Three Fiber renderer for @json-render/core. JSON becomes 3D scenes.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/react
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/react",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "React renderer for @json-render/core. JSON becomes React components.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/redux
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/redux",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Redux adapter for json-render StateStore",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/remotion
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/remotion",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Remotion renderer for @json-render/core. JSON becomes video compositions.",
"keywords": [
-8
View File
@@ -1,13 +1,5 @@
# @json-render/shadcn
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
- @json-render/react@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/shadcn",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "shadcn/ui component library for @json-render/core. JSON becomes beautiful Tailwind-styled React components.",
"keywords": [
-19
View File
@@ -1,19 +0,0 @@
# @json-render/solid
## 0.13.0
### Minor Changes
- 5b32de8: Add SolidJS and React Three Fiber renderers, plus strict JSON Schema mode for LLM structured outputs.
### New:
- **`@json-render/solid`** -- SolidJS renderer. JSON becomes Solid components with reactive rendering, schema export, and full catalog support.
- **`@json-render/react-three-fiber`** -- React Three Fiber renderer. JSON becomes 3D scenes with 19 built-in components for meshes, lights, models, environments, text, cameras, and controls.
### Improved:
- **`@json-render/core`** -- `jsonSchema({ strict: true })` produces a JSON Schema subset compatible with LLM structured output APIs (OpenAI, Google Gemini, Anthropic). Ensures `additionalProperties: false` on every object and all properties listed in `required`.
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/solid",
"version": "0.13.0",
"version": "0.12.0",
"license": "Apache-2.0",
"description": "SolidJS renderer for @json-render/core. JSON becomes Solid components.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/svelte
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/svelte",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Svelte 5 renderer for @json-render/core. JSON becomes Svelte components.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/vue
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/vue",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Vue renderer for @json-render/core. JSON becomes Vue components.",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/xstate
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/xstate",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "XState Store adapter for json-render StateStore",
"keywords": [
-7
View File
@@ -1,12 +1,5 @@
# @json-render/zustand
## 0.13.0
### Patch Changes
- Updated dependencies [5b32de8]
- @json-render/core@0.13.0
## 0.12.1
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@json-render/zustand",
"version": "0.13.0",
"version": "0.12.1",
"license": "Apache-2.0",
"description": "Zustand adapter for json-render StateStore",
"keywords": [