AI Agents don't just chat anymore — they build entire apps. Dynamic, interactive interfaces generated on-the-fly, rendered natively across every device.
Three steps from natural language intent to a fully interactive application, rendered natively on any platform.
Tell the agent what you want in plain language. A booking form, a data dashboard, an inventory tracker — anything.
The AI agent produces declarative UI components — structured data, not executable code. Safe, streamable, and framework-agnostic.
Your client renders the UI using its own native widgets — Angular, React, Flutter, or mobile. Same response, every platform.
Taking inspiration from the A2UI protocol and running on Makepad 2.0, A2App turns AI agents into app generators — secure, declarative, and universal.
Agents send structured component descriptions — never raw code. No injection attacks, no sandbox escapes. Your catalog controls what's allowed.
UIs build in real-time as the agent generates them. Users see the interface materializing — no waiting for complete responses.
A single agent output renders natively on web, iOS, Android, and desktop. Your design system, your components, every device.
Users interact with generated UIs — fill forms, click buttons, manipulate data — and actions flow back to the agent for dynamic responses.
Watch an AI agent transform a simple request into a fully interactive application.
Agents compose charts, KPI cards, tables, and filters into a cohesive dashboard — all from a single prompt.
Multi-step forms with conditional logic, validation, and file uploads — generated dynamically by agents.
Tables, maps, charts, and custom components — agents choose the best visualization for the data.
The same declarative UI renders natively on desktop, tablet, and mobile — using each platform's own design system and components.
From internal tools to customer-facing products — agents can generate any interface on demand.
Ask your agent for reports and get interactive dashboards with live charts, drill-downs, and export capabilities.
Generate admin panels, approval workflows, and operational dashboards without a line of frontend code.
Dynamic product configurators, booking flows, and support interfaces — personalized per user.
Location pickers, route planners, and map-driven analytics rendered with native map components.
Dynamic forms that adapt based on user input — with validation, conditional logic, and submission handling.
Agents collaborating to build complex UIs — one handles data, another handles layout, a third manages styling.
Projects bringing A2App's ideas to life — from Makepad 2.0 native apps to prompt-injection-resistant agent runtimes.
A multi-platform Matrix chat client written in Rust, exemplifying Project Robius with Makepad 2.0. One codebase ships natively to macOS, Windows, Linux, iOS, and Android.
A prompt-injection-resistant agent runtime. A VS Code extension where an AI agent (GitHub Copilot) writes and launches web applications into a webview — with all inference and file access gatekept by a privileged LSP server, and Automerge coordinating isolated processes. This is the A2App pattern in practice: agents describe the app, a hardened runtime enforces the rules.
When AI agents generate interfaces, the runtime does the hard work. Rust's guarantees and Makepad 2.0's declarative model give agents expressive freedom — without giving up the rules.
The practical question is not whether to allow AI agents in markets but how to make them work well. Formal verification offers something concrete: constraints that actually constrain, rules that cannot be silently violated, guarantees that hold regardless of what the model learned.
If these trends continue, we may be witnessing another industrial revolution. Before mechanization, most work in the physics sense of force times distance was done by muscles. The steam engine and its descendants changed that. Most thinking used to be done by brains. In the near or far future, that may change too. This is not inevitable. It presumes breakthroughs that are plausible but not guaranteed. But the trajectory is clear enough to take seriously.
— Stephen Diehl, Zero to QED, Ch. 22 "What Comes Next"
This is the bet behind A2App + Makepad 2.0: agents describe what the UI should be; a Rust-native, declarative runtime enforces how it behaves. Expressive freedom for the model, hard guarantees for the user — apps that cannot be silently violated, no matter what the agent learned.
A2App uses webviews to embed rich content — and when an agent can influence what appears inside that surface, "probably safe" isn't good enough. Prompt injection, unexpected navigation, and tampered DOM state become real attack surfaces. The engine itself needs guarantees.
A browser engine with a formally verified Lean kernel coordinating navigation, session history, and core engine operations — paired with Rust modules for DOM management, rendering, and system I/O. Correctness of the critical path is proven, not just tested.
Why it matters for A2App: when an AI agent can influence the content inside a webview, a verified kernel rules out whole classes of silent violations. This is exactly the "constraints that actually constrain" principle applied at the browser layer — extending Makepad 2.0's Rust-native guarantees into embedded web surfaces.
View on GitHub →A2App draws inspiration from Google's open A2UI protocol for declarative, agent-driven interfaces — and brings those ideas to life with Makepad 2.0, a Rust-native UI runtime that renders across desktop, mobile, and web.
Declarative components, surfaces, data binding, and the adjacency list model for streaming UIs — borrowed as design inspiration, not as a runtime dependency.
A high-performance Rust UI framework with a reactive DSL, live reloading, and GPU-accelerated rendering — the engine behind every A2App surface.
Define which UI components agents can use. Control the visual vocabulary — your design system, your rules.
Use A2App surfaces over MCP for rich tool responses, embed MCP tools inside surfaces, or combine both.
Start building with Makepad 2.0, inspired by A2UI concepts. Open source, Rust-native, and production-ready.