You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: reorganize files to match nav sections, add ADK + comparison updates (google#776)
* docs: reorganize files to match nav sections
- Move catalogs, transports, client_to_server_actions → concepts/
- Move renderers, agents → reference/
- Move where-is-it-used, community → ecosystem/
- Rewrite agent-ui-ecosystem as concise 'How Does A2UI Compare?' intro page
- Move third-party integrations (json-render, OpenClaw) to ecosystem
- Fix all cross-references for moved files
- Remove duplicate nav entries (each page appears once)
* docs: refine How Does A2UI Compare page
- native-first → declarative UI, clarify host controls styling
- MCP Apps: clarify remote controls content, config via tool calling
- AG UI: credit CopilotKit team, React renderer, Composer contributions
- ChatKit: note shared design philosophy (basic components, declarative)
* docs: restore comparison table as At a Glance section
* docs: rename 'Where is A2UI Used?' → 'A2UI in the World'
* docs: rename where-is-it-used → a2ui-in-the-world, MCP SEP-1865 citation
* docs: add Google ADK section to A2UI in the World
ADK Web has native A2UI rendering and A2A↔A2UI message conversion.
Links to ADK docs, adk-web repo, and agent development guide.
* docs: fix CopilotKit attribution — Composer yes, React renderer no
React renderer PR google#542 is still open and not by CopilotKit.
Composer was contributed by maxkorp (@CopilotKit).
* docs: React renderer status — In Review, link to PR google#542
* docs: add redirects for all moved files
Old URLs now redirect to new locations:
- catalogs, transports, actions → concepts/
- renderers, agents → reference/
- community → ecosystem/
- where-is-it-used → ecosystem/a2ui-in-the-world
* docs: React renderer merged, contribution guide, writing fixes
- React renderer PR google#542 merged — update status to Stable across all pages
- Add React section to client-setup guide
- Expand community renderer submission with step-by-step instructions
- Replace community showcase placeholder with concrete guidance + sample links
- Collapse duplicate partner info in community.md (points to a2ui-in-the-world)
- Fix typo (signiciant → significant)
- Tighten how-to-use wording, fix Angular install (add @a2ui/web-lib)
* docs: add web_core shared library section to renderer development guide
Explains what @a2ui/web-lib (web_core) provides, how Lit/Angular/React
renderers use it, and why new web renderers should start from it rather
than reimplementing message processing and state management.
* docs: link renderer names to source in client-setup table
* docs: remove stars and last-updated columns from community renderers table
* docs: fix ChatKit link to point to actual docs instead of openai.com homepage
* docs: add live shields.io badges for stars and last-commit to community renderers
* docs: fix broken React sample link, fix relative path in ecosystem
---------
Co-authored-by: Zaf <zaf@0-a.org>
Copy file name to clipboardExpand all lines: docs/ecosystem/a2ui-in-the-world.md
+27-3Lines changed: 27 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
# Where is A2UI Used?
1
+
# A2UI in the World
2
2
3
3
A2UI is being adopted by teams at Google and partner organizations to build the next generation of agent-driven applications. Here are real-world examples of where A2UI is making an impact.
4
4
@@ -70,6 +70,25 @@ GenUI SDK uses **A2UI as the underlying protocol** for communication between ser
70
70
71
71
---
72
72
73
+
### Google ADK: Agent Development Kit
74
+
75
+
The [Agent Development Kit](https://google.github.io/adk-docs/) (ADK) is Google's open-source framework for building and deploying AI agents. The built-in developer UI, [ADK Web](https://github.com/google/adk-web), includes native A2UI rendering.
76
+
77
+
**How ADK uses A2UI:**
78
+
79
+
ADK integrated the A2UI v0.8 standard catalog to automatically render spec-compliant agent parts as native UI components directly in the chat. ADK also handles A2UI↔A2A message conversion, so agents built with ADK can send rich UI to any A2UI-capable client.
80
+
81
+
-**Built-in rendering**: ADK Web renders A2UI components natively in the dev UI
82
+
-**A2A integration**: A2UI messages are converted between A2A DataPart metadata and ADK events
83
+
-**Agent SDK**: The [A2UI Python agent SDK](https://github.com/google/A2UI/tree/main/agent_sdks/python) provides an ADK extension for generating A2UI from agents
-[ADK Web](https://github.com/google/adk-web) (developer UI with A2UI support)
88
+
-[Agent Development Guide](../guides/agent-development.md) (building A2UI agents with ADK)
89
+
90
+
---
91
+
73
92
## Partner Integrations
74
93
75
94
### AG UI / CopilotKit: Full-Stack Agentic Framework
@@ -134,9 +153,14 @@ The A2UI community is building exciting projects:
134
153
- Live examples with code
135
154
- Great for learning
136
155
156
+
### Third-Party Integrations
157
+
158
+
-**[json-render](https://json-render.dev/docs/a2ui)** — Vercel's React library for rendering A2UI component catalogs via Zod schemas. See [json-render vs. A2UI comparison](https://dipjyotimetia.medium.com/vercels-json-render-vs-google-s-a2ui-the-head-to-head-6f213cf1a23b).
159
+
-**[OpenClaw Canvas](https://docs.openclaw.ai/platforms/mac/canvas)** — OpenClaw uses A2UI to render agent-generated UI on connected devices via its canvas system. See [architecture overview](https://ppaolo.substack.com/p/openclaw-system-architecture-overview).
160
+
137
161
### Community Contributions
138
162
139
-
Have you built something with A2UI? [Share it with the community!](../community.md)
163
+
Have you built something with A2UI? [Share it with the community!](community.md)
140
164
141
165
---
142
166
@@ -145,7 +169,7 @@ Have you built something with A2UI? [Share it with the community!](../community.
145
169
-[Quickstart Guide](../quickstart.md) - Try the demo
146
170
-[Agent Development](../guides/agent-development.md) - Build an agent
147
171
-[Client Setup](../guides/client-setup.md) - Integrate a renderer
148
-
-[Community](../community.md) - Join the community
Copy file name to clipboardExpand all lines: docs/ecosystem/community.md
+13-28Lines changed: 13 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,39 +8,24 @@ A2UI is an open-source project licensed under Apache 2.0. We welcome contributio
8
8
9
9
## Community Showcase
10
10
11
-
> ℹ️ **Coming soon...**
12
-
>
13
-
> We are considering how best to showcase community projects, examples, themes, renderers, custom components, and more. A 4 minute (or less) demo video and code sample linked in Github discussions is a great way to show off your work.
11
+
Built something with A2UI? Show it off!
14
12
15
-
## Project Partners
16
-
17
-
A2UI is developed in collaboration with several organizations:
18
-
19
-
### Google Opal
20
-
21
-
[Opal](http://opal.google) lets users build, edit, and share AI mini-apps using natural language. The Opal team has been a core contributor to A2UI's development.
22
-
23
-
### Flutter
13
+
The best way to share your work is to **post in [GitHub Discussions](https://github.com/google/A2UI/discussions)** with a short description, a link to your code, and a demo video (4 minutes or less). We feature notable projects in the docs and release notes.
24
14
25
-
The [GenUI SDK for Flutter](https://docs.flutter.dev/ai/genui) uses A2UI as the UI declaration format for generating dynamic, personalized UIs in Flutter applications.
15
+
**Community-built renderers** are listed on the [Ecosystem Renderers](renderers.md) page — check there for community implementations and instructions for adding your own.
26
16
27
-
### Gemini Enterprise
17
+
**Official samples** in the repo are a great reference for what good A2UI projects look like:
28
18
29
-
A2UI is being integrated into [Gemini Enterprise](https://cloud.google.com/gemini-enterprise?e=48754805) to enable custom agents to render rich, interactive UIs within enterprise applications.
19
+
-[Restaurant Finder](https://github.com/google/A2UI/tree/main/samples/agent/adk/restaurant_finder) — ADK agent with dynamic forms
20
+
-[Contact Lookup](https://github.com/google/A2UI/tree/main/samples/agent/adk/contact_lookup) — search UI with data binding
-[Lit shell](https://github.com/google/A2UI/tree/main/samples/client/lit/shell) — minimal web component client
30
23
31
-
### AG UI / CopilotKit
32
-
33
-
[AG UI](https://ag-ui.com/) and [CopilotKit](https://www.copilotkit.ai/) provide day-zero compatibility with A2UI, enabling developers to build rich, state-synced applications that render dynamic UIs from agents.
34
-
35
-
### A2A
36
-
37
-
Google's [A2A team](https://a2a-protocol.org/) have been core contributors to A2UI's development, with support from the A2A Technical Steering Committee (TSC).
38
-
39
-
### ... and more
24
+
## Project Partners
40
25
41
-
There are many organizations and individuals contributing to A2UI's development.
26
+
A2UI is developed in collaboration with Google Opal, Flutter (GenUI SDK), Gemini Enterprise, AG UI / CopilotKit, and the A2A team. For full details and case studies, see [A2UI in the World](a2ui-in-the-world.md).
42
27
43
-
If you have made signiciant contributions to A2UI, please submit your name to this list.
28
+
If you have made significant contributions to A2UI, please submit your name to this list.
44
29
45
30
## Code of Conduct
46
31
@@ -74,13 +59,13 @@ Significant contributors may be invited to join the project's maintainer team.
@@ -38,14 +38,25 @@ No credible A2UI renderer packages were found on PyPI as of March 2026. A2UI ren
38
38
39
39
## Submitting a Renderer
40
40
41
-
Built an A2UI renderer? We'd love to list it here:
41
+
Built an A2UI renderer? We'd love to list it here.
42
42
43
-
1. Open a PR to add it to this page
44
-
2. Or file an issue on the [A2UI repo](https://github.com/google/A2UI)
43
+
### How to submit
44
+
45
+
1.**Fork** the [google/A2UI](https://github.com/google/A2UI) repository
46
+
2.**Edit** this file (`docs/ecosystem/renderers.md`) — add a row to the Community Renderers table with your renderer's name, platform, npm package (if any), version support, and a link to the source
47
+
3.**Open a PR** against `google/A2UI` with a short description of your renderer
48
+
4.**Post in [GitHub Discussions](https://github.com/google/A2UI/discussions)** — let the community know what you built! A short demo video goes a long way.
49
+
50
+
Need inspiration? Browse the **[community samples](https://github.com/google/A2UI/tree/main/samples)** in the repo — these cover Angular, Lit, and ADK-based agents and are a good starting point.
45
51
46
52
### What makes a good community renderer?
47
53
48
-
- Published source code (open-source preferred)
49
-
- Clear documentation on which A2UI spec version is supported
50
-
- At least basic component coverage (text, buttons, inputs, layout)
51
-
- Active maintenance
54
+
A listing is more likely to be accepted and used if it:
55
+
56
+
- Has **published source code** (open-source preferred, MIT or Apache 2.0)
57
+
- Clearly states **which A2UI spec version** it supports (v0.8, v0.9, or both)
58
+
- Covers **core components**: text, buttons, inputs, and basic layout
59
+
- Includes a **README** with install instructions and a minimal usage example
60
+
- Is **actively maintained** — flag it as archived if you're no longer supporting it
61
+
62
+
Community renderers don't need to be production-ready to be listed — experimental and early-stage projects are welcome in the Notable Mentions section.
Copy file name to clipboardExpand all lines: docs/guides/renderer-development.md
+56Lines changed: 56 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,62 @@ This document outlines the required features for a new renderer implementation o
5
5
!!! info "Version Notes"
6
6
This guide primarily describes the v0.8 message flow. v0.9 renames several messages (`surfaceUpdate` → `updateComponents`, `dataModelUpdate` → `updateDataModel`, `beginRendering` → `createSurface`) and uses a flatter component format. See the [v0.9 specification](../specification/v0.9-a2ui.md) for details.
7
7
8
+
## Web Renderers: Use `@a2ui/web-lib` (`web_core`)
9
+
10
+
If you're building a renderer for the web (React, Vue, Svelte, etc.), you don't need to implement message processing, state management, or schema validation from scratch. The **[`@a2ui/web-lib`](https://github.com/google/A2UI/tree/main/renderers/web_core)** package (`web_core`) provides all the framework-agnostic logic that the maintained Lit, Angular, and React renderers share.
1.**Map A2UI component types to your framework's components** (e.g., `Text` → `<p>`, `Button` → `<button>`)
46
+
2.**Subscribe to state changes** from `web_core` and re-render
47
+
3.**Forward user actions** back through the `MessageProcessor`
48
+
49
+
See the [React renderer](https://github.com/google/A2UI/tree/main/renderers/react), [Lit renderer](https://github.com/google/A2UI/tree/main/renderers/lit), and [Angular renderer](https://github.com/google/A2UI/tree/main/renderers/angular) for working examples of this pattern.
50
+
51
+
### Version support
52
+
53
+
`web_core` exports both v0.8 and v0.9 APIs:
54
+
55
+
-`@a2ui/web_core/v0_8` or `@a2ui/web_core` (default) — stable v0.8
56
+
-`@a2ui/web_core/v0_9` — v0.9 with `createSurface`, custom catalogs, client-side functions
57
+
-`@a2ui/web_core/v0_9/basic_catalog` — v0.9 basic catalog expression parser and built-in functions
58
+
59
+
!!! tip "Start with `web_core`"
60
+
Building a web renderer without `web_core` means reimplementing ~3,000 lines of message processing, state management, and schema validation. Unless you have a specific reason to diverge, use it.
61
+
62
+
---
63
+
8
64
## I. Core Protocol Implementation Checklist
9
65
10
66
This section details the fundamental mechanics of the A2UI protocol. A compliant renderer must implement these systems to successfully parse the server stream, manage state, and handle user interactions.
0 commit comments