explaingit

google/a2ui

Analysis updated 2026-06-24 · repo last pushed 2026-05-22

14,670TypeScriptAudience · developerComplexity · 4/5MaintainedLicenseSetup · moderate

TLDR

Google spec and renderers that let AI agents describe interactive UIs as JSON, which client apps in React, Lit, Angular, Flutter, or SwiftUI map to native components.

Mindmap

mindmap
  root((A2UI))
    Inputs
      Agent prompt
      Component catalog
      JSON UI description
    Outputs
      Rendered widgets
      Forms
      Cards
      Dashboards
    Use Cases
      Agent-generated forms
      Remote agent UIs
      Approval dashboards
      Chat embedded widgets
    Tech Stack
      TypeScript
      JSON
      Lit
      React
      Flutter
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Have an LLM agent generate a booking form that renders in a React or Lit web app

USE CASE 2

Let a remote specialist agent return a UI fragment that appears inside a chat thread

USE CASE 3

Build enterprise approval dashboards an agent produces on demand from JSON

USE CASE 4

Stream a progressive UI update as the agent thinks, using the trusted component catalog

What is it built with?

TypeScriptJSONLitReactFlutter

How does it compare?

google/a2uichocobozzz/peertubebotpress/botpress
Stars14,67014,68314,685
LanguageTypeScriptTypeScriptTypeScript
Last pushed2026-05-222026-05-20
MaintenanceMaintainedMaintained
Setup difficultymoderatehardmoderate
Complexity4/54/53/5
Audiencedeveloperops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

The renderer needs a client component catalog set up in your framework before any agent JSON will display, and the v0.8 spec is still changing.

Apache 2.0 lets you use, modify, and ship this commercially as long as you keep the license and notice files.

In plain English

A2UI, which stands for Agent-to-User Interface, is a Google open-source project that lets an AI agent build a real, interactive user interface for the user to look at, not just text. Generative AI is good at writing words and code, but agents often struggle to show rich screens like forms, cards, sliders, or date pickers, especially when the agent is running on a different server than the user's app. A2UI fixes that by giving agents a standard way to describe a UI in JSON. The README marks the project as version 0.8, an early public preview, with the specification still evolving. The basic idea is that the agent sends a small JSON document describing what UI it wants, and the client application renders that JSON using its own native components, whether the client is built in Flutter, Angular, Lit, React, SwiftUI, or something else. The same JSON can therefore appear on many different platforms. The project's design choices are listed plainly. Security comes first: A2UI is data, not code, and the client only allows components from a trusted catalog it controls. The format is meant to be easy for large language models to generate piece by piece, so the UI can update progressively during a conversation. The structure is separated from the implementation, so the agent does not need to know which framework the client uses. A registry pattern lets developers attach custom components, including secure iframes for legacy content, with their own sandboxing rules. The README lists three example use cases: an agent generating a custom form for a booking, an orchestrator agent passing a job to a remote specialist agent that returns a UI to show inside the main chat, and enterprise agents producing approval dashboards or charts on demand. The flow is split into generation, transport over protocols like A2A or AG UI, parsing by the A2UI Renderer, and finally rendering by mapping abstract types to real widgets. Getting started options include a five-minute Restaurant Finder demo that uses a Gemini-powered Python agent and a Lit renderer, an integration with CopilotKit for React apps, a visual A2UI Composer and Widget Builder, and a Theater that steps through pre-built streaming scenarios across Lit, React, and Angular. A Flutter SDK called GenUI also uses A2UI underneath. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Give me a 5-minute install guide for the A2UI Restaurant Finder demo with Gemini and Lit
Prompt 2
Show me the minimum A2UI JSON to render a form with a text field, date picker, and submit button
Prompt 3
Write a React component that uses CopilotKit and the A2UI renderer to display agent-generated UI
Prompt 4
Explain how A2UI keeps client apps safe by treating the agent output as data not code
Prompt 5
Walk me through registering a custom widget in the A2UI component registry

Frequently asked questions

What is a2ui?

Google spec and renderers that let AI agents describe interactive UIs as JSON, which client apps in React, Lit, Angular, Flutter, or SwiftUI map to native components.

What language is a2ui written in?

Mainly TypeScript. The stack also includes TypeScript, JSON, Lit.

Is a2ui actively maintained?

Maintained — commit in last 6 months (last push 2026-05-22).

What license does a2ui use?

Apache 2.0 lets you use, modify, and ship this commercially as long as you keep the license and notice files.

How hard is a2ui to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is a2ui for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.