vercel-labs avatar

React Native

Turns JSON specifications into native React Native UIs with a full component catalog, data binding, and action handling baked in. You get all the standard mobile components (buttons, inputs, cards, modals) plus visibility conditions, dynamic props via expressions like `$bindState`, and a `Pressable` + `setState` pattern for interactive flows. The two-way binding works naturally on component value props instead of requiring explicit statePath configuration. Useful when you're building component-driven mobile apps from JSON specs, rendering AI-generated UIs, or need a catalog-based approach to mobile layouts. The external store support lets you plug in your own state management if needed.

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

Install

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

Installs into .claude/skills of the current project.

Files

@json-render/react-native

React Native renderer that converts JSON specs into native mobile component trees with standard components, data binding, visibility, actions, and dynamic props.

Quick Start

import { defineCatalog } from "@json-render/core";
import { schema } from "@json-render/react-native/schema";
import {
  standardComponentDefinitions,
  standardActionDefinitions,
} from "@json-render/react-native/catalog";
import { defineRegistry, Renderer, type Components } from "@json-render/react-native";
import { z } from "zod";

// Create catalog with standard + custom components
const catalog = defineCatalog(schema, {
  components: {
    ...standardComponentDefinitions,
    Icon: {
      props: z.object({ name: z.string(), size: z.number().nullable(), color: z.string().nullable() }),
      slots: [],
      description: "Icon display",
    },
  },
  actions: standardActionDefinitions,
});

// Register only custom components (standard ones are built-in)
const { registry } = defineRegistry(catalog, {
  components: {
    Icon: ({ props }) => <Ionicons name={props.name} size={props.size ?? 24} />,
  } as Components<typeof catalog>,
});

Sponsors

Details

Repository
github.com/vercel-labs/json-render
Categories
Frontend Development, AI & Agent Building, Cloud & Infrastructure, Mobile Development
First seen
May 16, 2026

More from vercel-labs/json-render

All 31
1onmax avatarnuxt-contentonmax/nuxt-skillsBuild typed, content-driven Nuxt applications with @nuxt/content. Use when working with content.config.ts, collections, queryCollection, Markdown or MDC renderi2.9Kskills.sh installs
2onmax avatarnuxt-modulesonmax/nuxt-skillsUse when creating Nuxt modules: (1) Published npm modules (@nuxtjs/, nuxt-), (2) Local project modules (modules/ directory), (3) Runtime extensions (components,2.9Kskills.sh installs
3owl-listener avatarlayout-gridowl-listener/designer-skillsDefine responsive layout grid systems with columns, gutters, margins, and breakpoint behavior.2.6Kskills.sh installs
4laguagu avatarnextjs-seolaguagu/claude-code-nextjs-skillsNext.js App Router SEO optimization and auditing. Use when implementing or fixing SEO in a Next.js app — metadata and generateMetadata, viewport/themeColor, Ope2.5Kskills.sh installs
5vuejs-ai avatarvue-development-guidesvuejs-ai/skillsA collection of best practices and tips for developing applications using Vue.js. This skill MUST be apply when developing, refactoring or reviewing Vue.js or N2Kskills.sh installs
6quodsoler avatarue-ui-umg-slatequodsoler/unreal-engine-skillsUse this skill when working with UMG, UI, widget, UserWidget, Slate, HUD, BindWidget, Common UI, menu, or UMG binding in Unreal Engine. See references/widget-ty1.5Kskills.sh installs