📈 GH Trending Explorer 🎲 Surprise me

← all repos

hhikr / endfield-ui-skill

git clone https://github.com/hhikr/endfield-ui-skill.git

帮助agent做出终末地风格的ui

—
stars, 24h
+52
stars, 7 days · #874
+52
stars, 30 days · #5,702
52
★ total · +52% this week
1
forks · 1 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageHTML
License—
Created2026-10-17 (3d ago)
Last push2d ago
Watchers0
OwnerUser

Links

README excerpt
# endfield-ui
An agent skill for building UI with an *Arknights: Endfield*-flavoured industrial look — on the web, mobile web, iOS, Android, Flutter, React Native, WeChat mini programs and desktop apps. Uses no game assets.
一个让 AI 写出"终末地风格"界面的 skill:浅色底配黑字,只用一种亮色(默认是黄 `#FFFA00`),能点的按钮切掉一个角,标题上面放一行拉宽的英文小字、下面是粗体中文,列表每一行都有编号,背景只有淡淡的斜线和等高线,动画短而干脆。覆盖网页、手机网页、iOS、Android、Flutter、React Native、小程序和桌面应用。
基本规则每个产品都一样,外观可以按产品换:亮色、底色、切角大小、背景纹理、疏密、动画多少六项都能调,另有四组现成的搭配,免得每个用它的产品都长得一样(见 `references/variation.md`)。
## 安装
这是一个标准的 Agent Skills 包(根目录 `SKILL.md`),不绑定某一家的 agent。挑一种装法:
**通用:skills CLI(推荐)**,一条命令装给本机已有的 agent(Claude Code、Codex、Cursor、Gemini CLI、GitHub Copilot 等):
 [code] 
**Claude Code**
 [code] 
**OpenAI Codex**(CLI、IDE 插件、桌面版)
 [code] 
装好后重启 Codex;可以直接说"做成终末地风格",也可以用 `$endfield-ui` 点名调用。`agents/openai.yaml` 提供了 Codex 界面里的名字、简介和颜色。
**其他 agent / 不支持 skills 的工具**(只读 `AGENTS.md`、`.cursorrules`、`GEMINI.md` 这类规则文件的):把仓库放进项目,例如 `vendor/endfield-ui/`,在规则文件里加一行:
 [code] 
**ChatGPT 网页 / 桌面对话**:没有安装目录。可以把 `SKILL.md` 和要用的平台指南(`references/platforms/*.md`)作为附件上传,让它照着做。
## 结构
agent 只在被触发时读 `SKILL.md`;其余文件按需打开,不会一次全塞进上下文。
 [code] 
agent 的工作顺序:读 `SKILL.md` → 读 `references/variation.md` 定变体和主视觉 → 按页面类型和平台打开对应的 `references/platforms/*.md` → 网页直接引用 `assets/`,Flutter 拷 `templates/flutter/lib/ef/`,其他平台照 `tokens.json` 和平台指南自己落地 → 用 `SKILL.md` 末尾的清单自查。
## 预览
不想起服务器的话,先看下面的截图和录屏。录屏都是从模板实际跑出来的,速度就是真实速度;GIF 的帧率较低(20–30 帧/秒),颜色也压缩过,曲线的手感以浏览器里跑的为准。
### 用起来什么样
截图:`examples/web/`(网页模板的浅、深、手机宽度)和 `examples/app/`(Flutter 六个屏幕)。
真实操作一遍的录屏(`examples/motion/`):
| 手机网页:列表与底部面板 | 设置与对话框 | 状态 |
| --- | --- | --- |
| | | |
| 列表逐行亮起,点一行推入底部面板,取消后推回 | 开关和分段移动,保存的处理中到完成,删除确认对话框的通电和关上 | 删除一行后下面的行补位,提示条擦入再擦掉 |
| 展示页打开 | 控制台打开 |
| --- | --- |
| | |
| 三色条扫过、字标推入、马克笔划过、读数落定;底部滚动条一直走;然后是指针视差 | 圆盘组装、看板通电、大数字落定;然后悬停圆盘的段:括住、光束连到中心、读数换成该段 |
| 深浅切换 | 换页 |
| --- | --- |
| | |
| 从按钮处扩散一个圆揭开新主题 | 阅读页 → 控制台 → 阅读页:同源跳转时的快门(`@view-transition`) |
### 同一套规则,四种外观
同一个页面,从左到右是四组预设:`standard` 标准、`coldstore` 冷库(冰蓝、冷灰纸、小切角、网格底纹、去掉入场动效)、`site` 工地(琥珀、米色纸、大切角、斜线纹底纹)、`nightshift` 夜班(荧光绿、默认深色、无底纹、紧凑)。编号、切角、宽体字段、细线这些固定规则没变,强调色、纸色、切角大小、底纹和密度变了。
六个维度怎么选、自定义强调色要满足什么对比度、怎么写变体卡,见 `references/variation.md`。
### 每个动效
`references/motion.md` 动效清单里的每一项各有一段录屏(`examples/motion/each/`,从 `templates/motion.html` 对应的那一格录下)。说明格式是“触发 │ 时长(毫秒) │ 曲线”。
**三条曲线**:`snap` 迅速到位后稳住,`mech` 慢起硬停,`ease` 只给三色条和颜色变化。
**打开页面**
 三色条扫过 一次访问的第一页 │ 600 │ ease 
 字标推入 展示页 │ 620,第二行晚 140 │ mech 
 马克笔划过 展示页 │ 晚 420,420 │ mech 
 乱码后落定 打开页面 │ 600,每个晚 ≤ 40 │ 线性 
 通电 打开控制台 │ 520,每行晚 100 │ mech 
 逐行亮起 切换列表内容 │ 320,每行晚 38 │ snap 
 圆盘组装 打开控制台 │ 360,每段晚 45 │ snap 
**回应操作**
 黄色擦入、亮边扫过、按下 悬停 / 聚焦 │ 280 │ mech;按下 100 
 色条落下、整行右移 悬停 / 按下 │ 200,右移 250 │ snap 
 页签伸开 悬停看板 │ 400 │ mech 
 墨色灌满 (数字同时乱码落定) 悬停空心大编号 │ 450 │ mech 
 保存:处理中,然后完成 aria-busy → 完成一次擦过 600 │ mech 
 分段进度 按格跳,不平滑;未知进度循环,完成即停 
 锁定、黄底灌满 (控制台) 悬停圆盘某段:括住、光束连到中心、读数换成该段 300 │ mech;悬停看板里的大数字:黄底灌满 220 │ mech 
**进出与状态变化**
 提示擦入 出错 / 需要注意 │ 280 │ mech;不抖动 
 删除一行 向右擦掉 200 │ mech;下面的行上移 200 │ snap 
 提示条 从左擦入 280,停 2 秒,向右擦掉