关于 clear-appui
Clear AppUI 是一项技能,指导开发者使用已安装的 `fossui` Dart 包构建 Flutter 界面。它涵盖 API 检查、组件应用、设计规范和界面行为验证。
主要功能
- 01检查已安装包的 API
- 02组合 Flutter 界面组件
- 03主题与布局指导
- 04无障碍与 HIG 指导
- 05交互式 Widget Preview 验证
适用场景
- 01使用现有 `fossui` 组件构建页面
- 02迁移应用并保留原有行为
- 03检查自适应布局与无障碍
- 04验证修改后的界面交互
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ ycy-0510/ clear-appui --skill clear-appui安装后在 Claude Code 中输入/clear-appui确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api-contract.jsonintegration.mdscripts/doctor.mjs详细介绍
Clear AppUI
使用已安装的 Clear AppUI 库来构建所需界面。
仓库为 ycy-0510/clear-appui;其 Dart 软件包标识符为 fossui。
产品级导入使用 package:fossui/app_ui.dart;较低层级的组件使用
package:fossui/fossui.dart。迁移现有应用时,保留项目的行为、数据和本地
说明。
先确定实现方式
依赖解析完成后,运行 node <this-skill>/scripts/doctor.mjs <flutter-project>。
该脚本会通过 .dart_tool/package_config.json 定位实际软件包、检查 API 契约,并打印匹配的源文件路径和 Git 修订版本。
如果缺少依赖,请安装
集成参考中所示的 Git 依赖,然后再次运行 doctor。
阅读返回的入口文件,以及任务所需组件的构造函数。参数名称、枚举值、控制器和行为必须以已安装文件或其示例为准。编写替代实现前,先检查现有组件。如果不存在 App* 封装,请阅读 lib/src/components/。
该软件包附带匹配的技能。如果 skillMatchesPackage 为 false,请在编辑 UI 前阅读 doctor 报告的 bundledSkill。API 契约不同意味着出现了错误:请使用软件包附带的技能,而不是自行猜测。
使用库构建界面
- 将
AppTheme放在应用外壳之下。从context.appTheme.tokens读取语义化值;产品级覆盖使用dimensions、motion和sheet。AppTheme 会适配 FossTheme;请保持这一唯一的令牌来源。 - 在适用时使用 AppButton、AppText、AppCard、AppTextField、AppBadge、AppCheckbox、AppSwitch 和 AppListTile。对于较低层级的选择、对话框、菜单、进度或反馈,使用现有的 Foss* 变体。
- 产品页面框架使用 AppScaffold 和 AppNavigationBar。利用 scaffold 声明的 MediaQuery 内边距,确保底部内容可触达。
- 在相关路由内放置 AppPresentationHost。通过 showAppSheet 展示工作表;将提供的 ScrollController 连接到工作表主体。页面和工作表共享该 host 的拖动协调器。添加嵌套展示或拖动行为前,先阅读实现。
- 对于受限布局,优先使用 AppAdaptiveLayout、AppAdaptiveGrid 和 AppConstrainedContent。根据可用空间进行适配。
- 让反馈有明确目的。FossToaster 管理 toast 队列:只有最前面的 toast 会显示内容;后方的界面是队列中消息的预览。用户需要解决表单问题时,请使用内联错误。
应用界面指导
查阅已安装的 doc/app_ui/APPLE_HIG_NOTES.md,了解已实现的决策和其中链接的官方资料。使用 HIG 指导层级、内容可读性、安全区域、键盘访问、触控目标、动效和无障碍功能。产品令牌值是可配置选项,并非 Apple 规定的度量标准。
保持间距一致和形状同心。避免在各个屏幕中重新实现该库的导航、工作表材质或手势处理。Flutter 工作表只是对 Apple 材质的近似实现;必要时请在实际目标平台上验证平台特定行为。
验证所需行为
使用交互式 Widget Preview,注入示例仓库且不产生原生副作用。验证窄屏/宽屏布局、浅色/深色模式、较大文本、错误/重试、取消、键盘/焦点,以及任务修改的交互。遵循宿主项目的 CPU、SDK、模拟器和发布规则。仅限设备的检查在实际运行前应标记为待处理。
阅读 integration.md,了解依赖、API 位置和预览命令。该技能提供说明和源码检查方法;Dart 依赖则由项目单独安装。