# mindmap **Repository Path**: masonwu21/mindmap ## Basic Information - **Project Name**: mindmap - **Description**: No description available - **Primary Language**: C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-25 - **Last Updated**: 2026-04-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

CORE UI

English · 中文  ·  📖 在线文档

**Core UI** 是一个现代化的 Windows 桌面 UI 框架,从零重新设计以匹配 Microsoft **Fluent 2** 视觉语言,同时保持**原生级的性能**与**极小的分发体积**。底层基于 **Direct2D / Direct3D 11** 硬件加速渲染,把从按钮、文本框到 SplitView、Flyout、Expander 的 25+ 个内置控件统一在一套 **纯 C API** 之下(共 250+ 个导出函数)——Rust、Go、Python、C#、Delphi 乃至 Lua 都能直接调用,不需要写 C++ 绑定层。 推荐用类 XAML 的 **`.ui` 标记文件**描述界面,支持 CSS 风格的样式选择器、数据绑定、国际化、**热重载**——写 UI 不再是堆代码,而是像写 HTML 一样声明一棵节点树。项目还专门为 **AI 协作**而设计:一份自包含的速查文档([`docs/ai-guide.md`](./docs/ai-guide.md))让 LLM 一次读完就能生成完整的可运行应用,真正做到"描述需求 → 得到界面"的极速原型闭环。 > **8.4 MB 一个 DLL,就能写出跟 Office / VSCode 同一设计语言的 Windows 桌面应用。** > 不要 Chromium、不要 .NET、不要 Qt 几十兆的 moc/uic——一个 C 头文件,一份 `.ui` 标记文件,搞定。 ![version](https://img.shields.io/badge/version-1.3.0.4-blue) ![license](https://img.shields.io/badge/license-MIT-green) ![platform](https://img.shields.io/badge/platform-Windows%2010%2B-lightgrey) ![size](https://img.shields.io/badge/dll-8.4MB-brightgreen) ![api](https://img.shields.io/badge/C%20API-250%2B-orange) ## 🎯 为什么选 Core UI | 对比维度 | Electron | WPF / WinUI 3 | Qt | **Core UI** | |---------|----------|---------------|-----|-------------| | **分发体积** | 100+ MB | 需要 .NET 运行时 | 40+ MB Qt DLLs | **8.4 MB 单 DLL** | | **启动时间** | 1–3 秒 | 0.5–1 秒 | 0.5–1 秒 | **< 200 ms** | | **内存占用** | 150+ MB | 80+ MB | 60+ MB | **< 30 MB** | | **语言绑定** | 只能 JS | 只能 .NET | 只能 C++ | **C ABI,任意语言** | | **设计规范** | 自己画 | Fluent(受限) | 类原生 | **Fluent 2 原生级** | | **热重载** | ❌ | ❌ | ❌ | **✅ `.ui` 文件** | | **学习曲线** | 大前端生态 | XAML + C# | C++ + Meta 对象 | **C + XML 即上手** | **一句话总结**:想要 Electron 的开发体验 + 原生的性能 + Fluent 2 的颜值 + Qt 的控件齐全——Core UI 是目前唯一同时打满四格的方案。 ## 🤖 AI 时代的快速 UI 开发方案 **Core UI 是为 LLM 和 AI Agent 从零设计的 UI 框架。** 现在大家都让 AI 写代码。你试过让 Claude / GPT / Cursor 写一个 Qt 应用吗?它会告诉你去看 `moc`、帮你 include 一堆用不上的头、还经常搞错信号槽语法。写 WPF?它会把 XAML、C# code-behind、x:Bind 表达式混着编。原因很简单:**这些框架的心智负担不是为 token 预算设计的**。 Core UI 的架构天然让 AI 做对: | 设计决策 | AI 收益 | |---------|---------| | **纯 C ABI,全部 `uint64_t` 句柄** | 没有 C++ 模板、没有继承、没有虚函数——LLM 极难幻觉出类型错误 | | **声明式 `.ui` XML** | UI 就是一棵标签树,LLM 最擅长的事;比 imperative 代码短 3~5 倍 | | **全部 API 遵循 `ui_<名词>_<动词>`** | 可被精确预测:想禁用按钮?`ui_widget_set_enabled` 几乎一次猜对 | | **一份 `docs/ai-guide.md` 自包含速查** | Agent 只需 fetch 这一个文件,就能写出完整应用,不必遍历仓库 | | **热重载 `.ui` 文件** | Agent 改完无需重编译即可看效果,闭环更快 | | **250+ 导出函数全部进 DLL 符号表** | Agent 可以动态检查 `objdump -p core-ui.dll` 知道当前版本真实 API | | **所有文本走 `@key` 或 `{bind}`** | Agent 生成的 UI 天然多语言 / 数据驱动,不写死 | 典型工作流: ``` 用户:"帮我做一个 Windows 桌面下载器 UI,要 Fluent 外观" ↓ AI fetch docs/ai-guide.md (一个文件,全部知识) ↓ AI 生成 app.ui + main.cpp (声明式 XML + 10 行 C) ↓ cmake --build build (编译器兜底,LLM 不用自己验证) ↓ 右键改 .ui 文件热重载调样式 (不必重新生成代码) ``` ### 📖 AI 文档入口 | 入口 | 给谁用 | 说明 | |------|-------|------| | **[`llms.txt`](./llms.txt)** | AI Agent 爬虫 | [llmstxt.org](https://llmstxt.org) 标准索引,Agent 第一步 fetch 这个 | | **[`docs/ai-guide.md`](./docs/ai-guide.md)** | LLM 编程 | **自包含速查表**:API + 标签 + 属性 + 3 个完整例子 + 常见坑 | | **[`UI_CORE_API.md`](./UI_CORE_API.md)** | 深入场景 | 250+ 导出函数完整清单,按模块分组 | **Cursor / Claude Code / Cline / Continue 等用户推荐把 `docs/ai-guide.md` 加到项目规则里**(Cursor 的 `.cursorrules`、Claude Code 的 `CLAUDE.md`),一次上下文全覆盖。 提示词模板(复制即用): ``` 本项目使用 Core UI 框架。调用前先阅读 docs/ai-guide.md。 约束: 1. 优先使用 .ui 标记文件描述 UI,C++ 只写事件处理和数据绑定。 2. 所有颜色用 theme.* 引用,不要硬编码。 3. 所有文本用 @key 引用 .lang 文件,不要写死字符串。 4. 控件工厂函数:ui_vbox / ui_hbox / ui_button / ui_label …(见 ai-guide 第 4.4 节) ``` ## ✨ 核心特性 ### 🚀 轻到离谱,快到失真 - **8.4 MB 全量 DLL**,静态编译后 demo exe 仅 **1 MB**,可装进 U 盘跑 - **Direct2D + Direct3D 11** 全硬件加速,Per-Monitor DPI V2 一次画对 - **冷启动 < 200ms**,对标记文件路径点一下就能看到窗口 ### 🎨 颜值即正义 - 严格对齐 **Microsoft Fluent 2 Design Token**:色彩、圆角、阴影、动画无一例外 - 深色 / 浅色主题**一行切换**,所有内置控件自动响应 - **自定义无边框窗口**自带 TitleBar 控件,系统级拖拽 / 贴靠 / 动画 - 25+ 控件颗粒度对标 WinUI 3:Expander、Flyout、SplitView、NavItem、NumberBox… ### 🧩 声明式 UI,像写 HTML 一样 ```xml