← all repositories
thesysdev/openui

A new language for LLMs that draws UI instead of writing JSON

OpenUI replaces bloated JSON schemas with a compact, streaming-first markup so models can render React components as they speak.

6.8k stars TypeScript App BuildersAgentsOther AI
openui
Velocity · 7d
+12
★ / day
Trend
steady
star history

What it does OpenUI is a full-stack framework for generative interfaces. You define a component library in React, generate a system prompt from it, and let the LLM stream back UI in OpenUI Lang—a terse markup format. A React renderer parses the stream progressively and mounts live components (charts, forms, tables) as tokens arrive, no waiting for the full response.

The interesting bit The pitch is token economics. The README publishes benchmarks showing OpenUI Lang uses roughly half the tokens of Vercel’s JSON-Render and Google’s A2UI across seven scenarios, with a total of 4,800 tokens versus ~10,000 for JSON equivalents. That translates to lower latency and cost at scale, assuming the format proves as reliable as structured JSON.

Key highlights

  • Ships with built-in component libraries, headless chat state, and prebuilt chat layouts via @openuidev/react-ui and @openuidev/react-headless
  • CLI scaffolds a working Next.js app in three commands (npx @openuidev/cli create)
  • Includes an Agent Skill for Claude Code, Cursor, Copilot, etc. to scaffold and debug OpenUI apps
  • Supports custom Zod-typed components; the model is restricted to only what you register
  • Claims built-in data fetching, which Vercel and Google’s offerings lack according to the comparison table

Caveats

  • The comparison table lists latency at 4.9s versus ~14–20s for rivals, but doesn’t specify payload size or network conditions for that figure
  • Multi-platform support is listed as “Web, mobile, email” but the repository appears React-centric; the non-web path is unclear
  • The project is young (6.5k stars, actively seeking contributors) and the ecosystem is still building

Verdict Worth a look if you’re shipping LLM chat interfaces and JSON token counts are eating your margin or adding perceptible lag. Less compelling if you’re already committed to Vercel’s AI SDK and don’t need the extra component libraries.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.