// the find
flutter/genui
An official Flutter team experimental SDK for rendering LLM-generated UIs at runtime from JSON, rather than from generated code. The LLM produces a JSON widget tree based on your registered widget catalog, which gets rendered and whose state changes feed back to the agent. Aimed at Flutter developers building chatbots or agent-driven interfaces who want interactive controls instead of plain text responses.
- The state feedback loop is the genuinely interesting part: widget interactions serialize back to the LLM context, so the agent can react to slider positions, checkbox states, etc. without custom middleware.
- Backend-agnostic design with an adapter pattern (A2uiTransportAdapter) means you're not locked into one LLM SDK — the sample code shows google_generative_ai, dartantic_ai, and firebase_vertexai all working.
- The catalog_gallery dev tool ships with ~45 sample JSON definitions (flight booker, kanban board, checkout page) which double as a test suite via samples_rendering_test.dart — unusually thorough for something this early.
- Monorepo package split is sensible: core genui, genui_a2a for the A2UI protocol, genai_primitives, and json_schema_builder are separate pub packages so you only take what you need.
- Explicitly marked 'highly experimental' with API-breaking changes expected — the README says 'sometimes drastically', which is honest but means you should not build anything customer-facing on this yet.
- Streaming UI is listed as a future goal, not a current feature. For chat interfaces this is a significant gap; users will see nothing until the entire widget tree JSON is complete.
- Requires Flutter >=3.35.7, which as of mid-2026 is still a very recent requirement that may force beta/master channel usage in some CI setups.
- The custom widget registration story (how you actually expose your own widget catalog to the LLM's JSON schema) isn't explained in the README at all — you have to dig into package-level docs or watch the video, which is a friction point for evaluating adoptability.