This adapter bridges json-render's state management with Jotai atoms, letting you wire declarative JSON UI definitions into Jotai's atomic state model. You create a writable atom, wrap it with jotaiStateStore, and pass it to json-render's StateProvider. The main win is when you're already using Jotai across your app and want json-render components to read and write the same atoms as your hand-written React components. You can share a Jotai store instance so everything stays in sync. It's a clean integration layer if you're committed to both tools, though most teams won't need json-render's JSON-driven approach in the first place.

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

Install

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

Installs into .claude/skills of the current project.

Files

@json-render/jotai

Jotai adapter for json-render's StateStore interface. Wire a Jotai atom as the state backend for json-render.

Installation

npm install @json-render/jotai @json-render/core @json-render/react jotai

Usage

import { atom } from "jotai";
import { jotaiStateStore } from "@json-render/jotai";
import { StateProvider } from "@json-render/react";

// 1. Create an atom that holds the json-render state
const uiAtom = atom<Record<string, unknown>>({ count: 0 });

// 2. Create the json-render StateStore adapter
const store = jotaiStateStore({ atom: uiAtom });

// 3. Use it
<StateProvider store={store}>
  {/* json-render reads/writes go through Jotai */}
</StateProvider>

With a Shared Jotai Store

When your app already uses a Jotai <Provider> with a custom store, pass it so both json-render and your components share the same state:

import { atom, createStore } from "jotai";
import { Provider as JotaiProvider } from "jotai/react";
import { jotaiStateStore } from "@json-render/jotai";
import { StateProvider } from "@json-render/react";

const jStore = createStore();
const uiAtom = atom<Record<string, unknown>>({ count: 0 });

Sponsors

Details

Repository
github.com/vercel-labs/json-render
Category
Cloud & Infrastructure
First seen
May 16, 2026

More from vercel-labs/json-render

All 31
1vercel-labs avatarxstatevercel-labs/json-renderXState Store adapter for json-render's StateStore interface. Use when integrating json-render with @xstate/store for state management via @json-render/xstate.1.1Kskills.sh installs
2vercel-labs avatarsolidvercel-labs/json-renderSolidJS renderer for json-render. Use when building @json-render/solid catalogs/registries, wiring Renderer providers, implementing bindings/actions, or trouble1.1Kskills.sh installs
3microsoft avatarmarkdown-token-optimizermicrosoft/github-copilot-for-azureAnalyzes markdown files for token efficiency. TRIGGERS: optimize markdown, reduce tokens, token count, token bloat, too many tokens, make concise, shrink file, 1.1Kskills.sh installs
4vercel-labs avataryamlvercel-labs/json-renderYAML wire format for json-render with streaming parser, prompt generation, and AI SDK transform. Use when working with @json-render/yaml, YAML-based spec stream1.1Kskills.sh installs
5railwayapp avatardeploymentrailwayapp/railway-skillsThis skill should be used when the user wants to manage Railway deployments, view logs, or debug issues. Covers deployment lifecycle (remove, stop, redeploy, re1Kskills.sh installs
6microsoft avatarmarkdown-token-optimizermicrosoft/azure-skillsmarkdown token optimizer1Kskills.sh installs