Skip to content

ComposeFoundry

AceGuru-mjh edited this page Oct 1, 2026 · 4 revisions

ComposeFoundry

🎨 UI & 扩展 · 🏠 首页 › ComposeFoundry

Home Version Kotlin Modules Tools License

ComposeFoundry

📑 本页目录

ComposeFoundry/ 是独立的 Gradle 工程(有自己的 settings.gradle.kts,只含 :app), 不参与主构建。它是"让 LLM 画 UI"的实验场:JSON DSL → 预览 → 人确认后落码。

1. 它解决什么

主线 AGENT 能写代码、能跑命令,但要"画一个界面给你看"还差一步反馈闭环。 ComposeFoundry 提供这个闭环的中间环节:

flowchart LR
    A["LLM 产出 JSON UI DSL"] --> B["UiValidator 校验"]
    B -->|非法| BA["DiagnosticsEngine 报错<br/>(结构化诊断反馈给 LLM)"]
    B -->|合法| C["UiParser 解析为 UI 模型"]
    C --> D["UiRenderer 渲染"]
    D --> E["PreviewSurface 沙箱预览"]
    E --> F{"人确认?"}
    F -->|是| G["落码为真实 Compose 源码"]
    F -->|否| A
Loading

2. 组件

组件 职责
UiParser JSON → UI 树模型
UiValidator schema/语义校验(未知组件、非法属性、不可满足的约束)
UiRenderer UI 模型 → Compose 可组合项
DiagnosticsEngine 结构化诊断:错误位置 + 原因 + 修复建议(可回喂 LLM)
PreviewSurface 沙箱预览面板(不污染主 App UI)
主题系统 与主 App ui/theme 同一套设计语言对齐

示例输入:sample_preview.androidui.json。

3. 如何运行

cd ComposeFoundry
gradle wrapper --gradle-version 8.10      # 若仓库未锁定 wrapper
./gradlew :app:assembleDebug              # 或直接在 Android Studio 打开该目录

Note

因为它不参与主构建,CI 也不会编译它 —— 改动它不影响主线绿灯,但也意味着 改动这里不会被 CI 保护,自行保证能编译。

4. 与主 App 的关系

维度 主 App ComposeFoundry
是否进主构建 是 否(独立工程)
是否影响 CI 是 否
定位 产品本体 未来能力的实验场
UI 语言 Compose + Liquid Glass Compose + JSON DSL 预览

设计上它与主 App 的 ui/theme、Liquid Glass 保持视觉语言一致, 未来若 DSL 足够成熟,可以反向把"生成 UI"能力接回主线工具列表(那时它会成为一个新的 ui.* 工具族)。

5. 相关页面

footer

🏠 返回首页 · 📚 文档索引 · ❓ FAQ · 🔧 故障排查 · 🗺️ 路线图 · 🐛 提 Issue

Android Guru Agent · v1.4.4 · Kotlin 2.0.21 · Compose · PRoot · Room

Clone this wiki locally