Flutter Andrew Brogdon May 14, 2026

New updates to A2UI and Flutter's GenUI package

Article Summary

Andrew Brogdon from Flutter's team just dropped a major architectural overhaul that fundamentally changes how developers build AI-powered UIs. If you've been wrestling with GenUI's rigid structure, this update is a game-changer.

Flutter's GenUI package and the A2UI protocol have been completely reimagined in v0.9. The update shifts from a 'Structured Output First' approach to a 'Prompt First' philosophy, decoupling the architecture and giving developers direct control over LLM interactions instead of hiding them behind wrapper classes.

Key Takeaways

Critical Insight

Flutter's GenUI v0.9 trades convenience wrappers for architectural flexibility, letting you wire up any LLM provider while the framework handles UI state management and A2UI message parsing.

The migration guide reveals why moving schema definitions into prompts actually makes LLMs perform better at UI generation.

About This Article

Problem

Deeply nested A2UI schemas confused LLMs and went against how they naturally generate text. Using structured output APIs also meant hitting limits on catalog size and complexity, which made debugging harder since all the constraints were stuck in the network layer.

Solution

Flutter's team decided to put the prompt first. They added UI schema and A2UI instructions directly into the system prompt as plain text, then built PromptBuilder to automatically create correct system prompts from any catalog.

Impact

Modern LLMs work well with detailed system instructions written as plain text, which matches how they actually think. Developers can now change UI schemas directly to fit their apps without waiting for new package releases.