# thesysdev/openui

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/thesysdev-openui).**

7,446 stars · 552 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/thesysdev/openui
- Homepage: https://www.openui.com
- awesome-repositories: https://awesome-repositories.com/repository/thesysdev-openui.md

## Description

OpenUI is a generative UI development framework that converts natural language descriptions into structured, interactive user interface components using large language models. It enables the real-time transformation of text into functional prototypes such as charts, tables, forms, and cards.

The project distinguishes itself through a schema-driven orchestration system that uses typed UI primitives and JSON schemas to constrain model output, ensuring generated interfaces adhere to specific component libraries. It features a streaming parser that allows for progressive component rendering, displaying interface elements incrementally as tokens arrive rather than waiting for a full response.

The system covers broad capabilities including AI response streaming via OpenAI-compatible adapters, chat state management for conversation threads, and the automated generation of system prompts. It also includes tools for transforming structured component trees into static HTML for email export and a command-line interface for project scaffolding.

An embedded UI renderer is provided to display interfaces in environments without a traditional build pipeline.

## Tags

### Artificial Intelligence & ML

- [Natural Language Interface Generators](https://awesome-repositories.com/f/artificial-intelligence-ml/natural-language-interface-generators.md) — Creates interactive user interfaces that are generated in real time from natural language using LLMs.
- [Component Library Integrations](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-agent-integrations/component-library-integrations.md) — Provides tools to define typed UI primitives and schemas that integrate component libraries with AI agents. ([source](https://github.com/thesysdev/openui/blob/main/packages/svelte-lang))
- [System Prompt Generation](https://awesome-repositories.com/f/artificial-intelligence-ml/custom-model-definitions/interoperable-model-definitions/system-prompt-generation.md) — Constructs detailed model instructions by iterating through component library definitions and constraints.
- [LLM Integration Layers](https://awesome-repositories.com/f/artificial-intelligence-ml/llm-integration-layers.md) — Connects OpenAI-compatible APIs to a standardized logic layer for managing chat state and threads.
- [Progressive Rendering Streams](https://awesome-repositories.com/f/artificial-intelligence-ml/streaming-interfaces/progressive-rendering-streams.md) — Parses and displays structured interface elements incrementally as they are streamed from an AI provider.
- [OpenAI-Compatible APIs](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-systems-frameworks/model-integration-serving/model-integration-interfaces/ai-integration-apis/openai-compatible-apis.md) — Standardizes diverse LLM provider responses into a common OpenAI-compatible internal format.
- [Chat State Management](https://awesome-repositories.com/f/artificial-intelligence-ml/chat-state-management.md) — Provides a headless logic layer for managing conversation threads, message lists, and streaming status. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-headless))
- [Conversation State Managers](https://awesome-repositories.com/f/artificial-intelligence-ml/conversation-state-managers.md) — Tracks chat history and session metadata through a logic layer decoupled from the visual presentation.
- [Conversation Threads](https://awesome-repositories.com/f/artificial-intelligence-ml/language-model-orchestration/conversation-management/conversation-threads.md) — Tracks multiple chat sessions to allow users to create, switch, and paginate through a history of conversations. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-headless))
- [API Format Standardizers](https://awesome-repositories.com/f/artificial-intelligence-ml/llm-api-connectors/api-format-standardizers.md) — Translates diverse LLM API specifications into a standardized internal format for cross-provider compatibility. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-headless))
- [LLM Provider Integrations](https://awesome-repositories.com/f/artificial-intelligence-ml/llm-provider-integrations.md) — Integrates with diverse AI services using OpenAI-compatible APIs via configurable base URLs. ([source](https://github.com/thesysdev/openui/blob/main/examples/openui-chat))

### User Interface & Experience

- [Natural Language UI Synthesis](https://awesome-repositories.com/f/user-interface-experience/model-based-frontend-generators/natural-language-ui-synthesis.md) — Converts natural language descriptions into interactive user interface components using a streaming generative process. ([source](https://github.com/thesysdev/openui#readme))
- [Schema-Driven AI Orchestration](https://awesome-repositories.com/f/user-interface-experience/component-utilities/ui-frameworks/component-libraries/react-components/component-orchestration/schema-driven-ai-orchestration.md) — Defines typed UI schemas and system prompts to constrain model output to a specific library of components.
- [Schema-Driven Component Libraries](https://awesome-repositories.com/f/user-interface-experience/metadata-driven-component-libraries/schema-driven-component-libraries.md) — Maps UI components to structured schemas with prop definitions so models can invoke them correctly. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-lang))
- [Natural Language Prototyping Tools](https://awesome-repositories.com/f/user-interface-experience/natural-language-prototyping-tools.md) — Transforms natural language descriptions into functional UI prototypes for rapid iteration.
- [Output Constraint Mapping](https://awesome-repositories.com/f/user-interface-experience/schema-driven-element-mapping/output-constraint-mapping.md) — Maps UI primitives to structured JSON schemas that constrain model output to valid property types.
- [Generative UI Components](https://awesome-repositories.com/f/user-interface-experience/ui-to-host-integrations/chat-ui-integrations/generative-ui-components.md) — Translates generated language output into interactive components like charts, tables, forms, and cards. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-ui))
- [Chat Interface Layouts](https://awesome-repositories.com/f/user-interface-experience/chat-interface-layouts.md) — Provides layout structures for full-screen conversations, side-panel copilots, and collapsible bottom trays. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-ui))
- [Form State Management](https://awesome-repositories.com/f/user-interface-experience/form-state-management.md) — Tracks field values, handles defaults, and triggers action events within generated form components. ([source](https://github.com/thesysdev/openui/blob/main/packages/svelte-lang))
- [Statement Matching Merges](https://awesome-repositories.com/f/user-interface-experience/state-update-logic/partial-state-merging/statement-matching-merges.md) — Integrates partial updates into existing interfaces by matching statements to allow for iterative AI refinements. ([source](https://github.com/thesysdev/openui/blob/main/packages/lang-core))
- [UI Primitives](https://awesome-repositories.com/f/user-interface-experience/ui-primitives.md) — Provides a library of standard interface elements including layout blocks, data display tools, and form controls. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-ui))

### Data & Databases

- [Incremental JSON Parsing](https://awesome-repositories.com/f/data-databases/data-processing-pipelines/stream-processing-systems/data-streaming/structured-event-streams/typed-object-parsers/incremental-json-parsing.md) — Converts raw AI model text into structured component data using incremental streaming parsers. ([source](https://github.com/thesysdev/openui/blob/main/packages/svelte-lang))

### Networking & Communication

- [Structured AI Output Streams](https://awesome-repositories.com/f/networking-communication/response-streaming-utilities/partial-response-streams/structured-object-streaming/structured-ai-output-streams.md) — Streams structured AI output to the UI in real-time, rendering partial results before the full response completes. ([source](https://github.com/thesysdev/openui/blob/main/packages/react-headless))

### Software Engineering & Architecture

- [Prompt Generation](https://awesome-repositories.com/f/software-engineering-architecture/type-structure-generation/prompt-generation.md) — Automatically creates system instructions and schemas based on component library definitions to guide the model. ([source](https://github.com/thesysdev/openui#readme))

### Web Development

- [AI Output Validation](https://awesome-repositories.com/f/web-development/client-side-input-validators/schema-based-response-validation/ai-output-validation.md) — Constrains AI model output to a predefined set of components and typed contracts to ensure valid rendering. ([source](https://github.com/thesysdev/openui#readme))
- [Reactive Expression Evaluation](https://awesome-repositories.com/f/web-development/reactive-expression-evaluation.md) — Computes values for UI elements at runtime by processing abstract syntax tree nodes and query results. ([source](https://github.com/thesysdev/openui/blob/main/packages/lang-core))

### Programming Languages & Runtimes

- [JSON Schema Generators](https://awesome-repositories.com/f/programming-languages-runtimes/json-schema-converters/json-schema-generators.md) — Generates JSON schema representations of component libraries for use in external tool definitions. ([source](https://github.com/thesysdev/openui/blob/main/packages/svelte-lang))

### Part of an Awesome List

- [Project Boilerplates](https://awesome-repositories.com/f/awesome-lists/devtools/project-boilerplates.md) — Generative UI chatbot template.
