finds.dev← search

// the find

flutter/genui

★ 1,668 · Dart · BSD-3-Clause · updated Jun 2026

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.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →