Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
e2768f7
docs: renomeia para RetroX, aceita ADRs e registra decisões
oLuqueJs Oct 28, 2026
3a2ff20
build: pacote SwiftPM, check-toolchain e domínio inicial
oLuqueJs Oct 28, 2026
b7a3619
feat(core): inspeção de bundle, host e adapter PCSX2
oLuqueJs Oct 28, 2026
aa1a689
feat(core): GameLauncher, launchers NSWorkspace e Process
oLuqueJs Oct 28, 2026
123d7a2
test: integração do launch com emulador falso
oLuqueJs Oct 28, 2026
bcc5ac3
feat(tools): rx-launch-probe para o spike de launch
oLuqueJs Oct 28, 2026
8f6d714
feat(app): janela mínima de launch com modo simulado
oLuqueJs Oct 28, 2026
deb10c7
build: monta RetroX.app a partir do SwiftPM com assinatura ad hoc
oLuqueJs Oct 28, 2026
1ffb6a8
fix(tools): saída por linha no rx-launch-probe
oLuqueJs Oct 28, 2026
5c6f7c8
docs: spike 0001 (PCSX2 real) e ADR-0011 de estratégia de launch
oLuqueJs Oct 28, 2026
e553cf1
Add comprehensive SwiftUI design guidelines and templates
oLuqueJs Oct 28, 2026
2872d1f
feat(core): emuladores como plugins e plugin nativo do PCSX2
oLuqueJs Oct 28, 2026
b648523
feat(core): serial do disco PS2 e capas do PCSX2 por serial
oLuqueJs Oct 28, 2026
edaf836
fix(core): emulador recém-fechado não conta mais como aberto
oLuqueJs Oct 28, 2026
70726f5
feat(app): home de portátil, emuladores como plugins e novo visual
oLuqueJs Oct 28, 2026
122c3f9
docs: ADR-0013 (emuladores como plugins), brand spec e decisões D4-D7
oLuqueJs Oct 28, 2026
8cc0c7a
feat(core): catálogo de consoles ampliado e 11 temas de cor
oLuqueJs Oct 28, 2026
7ab9042
feat(core): perfis, capas próprias e metadados da Wikipedia
oLuqueJs Oct 28, 2026
ba605c9
feat(core): índice de jogos, RetroAchievements e controle do PCSX2
oLuqueJs Oct 28, 2026
053436e
feat(app): perfis, biblioteca em grade, 11 temas e capas próprias
oLuqueJs Oct 28, 2026
75da229
test(core): teste opt-in da busca real na Wikipedia
oLuqueJs Oct 28, 2026
401d39b
docs: ADR-0014 (metadados), spike 0002 (conquistas e controle) e temas
oLuqueJs Oct 28, 2026
96e6099
refactor: remove a integração com o RetroAchievements
oLuqueJs Oct 28, 2026
aefe0f8
feat(core): preferências de perfil e presets de controle
oLuqueJs Oct 28, 2026
7b1706a
feat(app): animações suaves, ajustes por controle e novas visualizações
oLuqueJs Oct 28, 2026
aa7d5bc
docs: controle no app inteiro, ajustes, animações e visualizações
oLuqueJs Oct 28, 2026
1149083
chore: deixa a swiftui-design-skill mais barata
oLuqueJs Oct 28, 2026
cc16124
chore: adiciona a skill logo-design com a mesma redução de custo
oLuqueJs Oct 28, 2026
117ffb8
feat(core): refactor CoverMatcher to use PreparedCovers for improved …
oLuqueJs Oct 28, 2026
eba91ea
docs: marca do RetroX (R geométrico) e personagem como direção futura
oLuqueJs Oct 28, 2026
e41230b
chore: remove a skill logo-design do projeto
oLuqueJs Oct 28, 2026
77f879e
feat(app): Rayo como ícone do app e marca na abertura e na barra supe…
oLuqueJs Oct 28, 2026
a8ee3f3
feat(app): marca da barra superior com o tile da Rayo e X em acento
oLuqueJs Oct 28, 2026
d4a215e
docs(marca): kit da Rayo com assinaturas alinhadas pela altura das ma…
oLuqueJs Oct 28, 2026
8c0553e
feat(app): nova abertura e assinatura alinhada na barra superior
oLuqueJs Oct 28, 2026
602901d
feat: add package.json for semantic release and create packaging script
oLuqueJs Oct 28, 2026
edad11e
refactor(app): abertura enxuta, com um gesto só
oLuqueJs Oct 28, 2026
97f8af8
fix(scripts): test.sh quebrava no CI com array vazio sob set -u
oLuqueJs Oct 28, 2026
78d3597
docs: novo README com a marca da Rayo e licença GPL-3.0
oLuqueJs Oct 28, 2026
3b0cd7e
fix(Settings): update toggle and button actions for better clarity
oLuqueJs Oct 28, 2026
ffa9f4b
docs(marca): X de duas hastes em gradiente e prancha nova do kit
oLuqueJs Oct 28, 2026
84d84a3
feat(temas): tema Rayo Paradise com as cores da Rayo
oLuqueJs Oct 28, 2026
e6169e6
test: amplia cobertura com mocks e integração de emuladores
oLuqueJs Oct 28, 2026
dc19b39
feat(brand): enhance BrandWordmark and add gradient functionality for…
oLuqueJs Oct 28, 2026
4f23525
docs: adiciona badges de tecnologias ao README
oLuqueJs Oct 28, 2026
ec6ed67
docs: organiza README e padroniza badges
oLuqueJs Oct 28, 2026
83c51f4
docs: remove badge do GitHub Actions
oLuqueJs Oct 28, 2026
94087b7
feat(app): X de duas hastes em gradiente na barra superior e na abertura
oLuqueJs Oct 28, 2026
808b0ea
docs: harmoniza cores e estilo das badges
oLuqueJs Oct 28, 2026
2ae7931
docs: corrige ícone da badge do macOS
oLuqueJs Oct 28, 2026
d669119
refactor(marca): X volta a ser a letra única, com gradiente
oLuqueJs Oct 28, 2026
c409ede
docs: uniformiza cores das badges
oLuqueJs Oct 28, 2026
fd6ebb3
docs(readme): usa cores do tema Rayo Paradise nas badges
oLuqueJs Oct 28, 2026
4cc2566
refactor(marca): X sólido sobre o claro, gradiente só no escuro
oLuqueJs Oct 28, 2026
34f31d7
docs(readme): apresenta interface e temas do RetroX
oLuqueJs Oct 28, 2026
d8565b3
fix(scripts): verify-package.sh com a ordem de argumentos do lipo do …
oLuqueJs Oct 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .claude/skills/swiftui-design-skill/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.DS_Store
*.swp
*.swo
*~
node_modules/
21 changes: 21 additions & 0 deletions .claude/skills/swiftui-design-skill/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2026 wholiver

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
128 changes: 128 additions & 0 deletions .claude/skills/swiftui-design-skill/README-zh.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
<div align="center">

# SwiftUI Design Skill

> *「一句话,一个能交付的 SwiftUI 界面。」*
> *"One prompt. A shippable SwiftUI interface."*

[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![Agent-Agnostic](https://img.shields.io/badge/Agent-Agnostic-blueviolet)](https://skills.sh)
[![Skills](https://img.shields.io/badge/skills.sh-Compatible-green)](https://skills.sh)

</div>

<p align="center">
<a href="README.md"><img src="https://img.shields.io/badge/English-blue?style=flat-square" alt="English"></a>
<a href="README-zh.md"><img src="https://img.shields.io/badge/中文-red?style=flat-square" alt="中文"></a>
</p>

**在你的 agent 里打一句话,拿回一个不 AI slop 的 SwiftUI 界面。**

3 到 30 分钟,你能设计出一个**有签名感的 iOS 界面**——不是「AI 做的还行」那种水平,是看起来像有品味的设计师做的。

反 AI slop 六条铁律、设计方向顾问、品牌资产协议、五维评审——全部内置。给 skill 你的品牌色板,它会读懂你的气质;什么都不给,内置的 5 种设计语汇也能兜底到不出丑。

跨 agent 通用——Claude Code、Cursor、Codex、OpenCode、Hermes 都能装。

## 装上就能用

```bash
npx skills add wholiver/swiftui-design-skill -g -y
```

## 能做什么

| 能力 | 交付物 | 典型耗时 |
|------|--------|----------|
| SwiftUI 界面设计 | 可编译的 SwiftUI 代码 · 设计系统 token · 布局模式 | 10–15 min |
| 设计方向顾问 | 5 流派 × N 种设计哲学 · 推荐 3 方向 · 视觉锚点描述 | 5 min |
| 品牌资产集成 | brand-spec.md · 色板 · 字体 · 间距系统 | 5–10 min |
| 反 AI Slop 审查 | 逐条检查 · 具体修复代码 · 替代方案 | 3–5 min |
| 五维评审 | 雷达图评分 · Keep/Fix/Quick Wins · 可操作修复清单 | 3 min |
| 布局模式库 | 9 种常见布局 · 可复制的 SwiftUI 代码 | 即时 |
| 动画设计 | spring/parallax/pull-to-refresh · 可编译代码 | 5–10 min |

## 核心机制

### 反 AI Slop 六条铁律

这是 skill 里最硬的一段规则。所有设计都必须通过这 6 条检查:

| # | 铁律 | ❌ 禁止 | ✅ 替代方案 |
|---|------|---------|------------|
| 1 | 起点从上下文开始 | 空白画布凭空捏造 | 先问设计系统/UI kit/品牌资产 |
| 2 | 初级设计师模式 | 等完美方案 | 灰色占位符 > 烂 SVG |
| 3 | 给变体不给终稿 | 一个「最终答案」 | 2–3 个差异化方向 |
| 4 | 占位符 > 烂实现 | AI 生成的剪贴画 | 干净的灰色占位 + 文字标注 |
| 5 | 系统优先,别填充 | 塞满每一个像素 | 每个元素必须证明自己存在的理由 |
| 6 | 禁止 AI slop 模式 | 紫蓝渐变、emoji 图标、圆角卡片+左边框 | 单一暖色强调色、SF Symbols、衬线标题 |

详见 `references/anti-ai-slop.md`。

### 设计方向顾问

当需求模糊时,skill 会从 5 大设计流派中推荐 3 个差异化方向:

| 流派 | 特征 | 代表风格 |
|------|------|----------|
| **信息型** | 数据优先、图表密集 | Bloomberg Terminal |
| **编辑型** | 杂志排版、衬线字体、大量留白 | NYT、Medium |
| **表现型** | 大胆配色、不对称布局、动效前置 | Stripe、Linear |
| **功能型** | 密集工具感、等宽字体点缀 | Things、OmniFocus |
| **温暖极简** | 柔和中性色、圆角、微妙质感 | Notion、Craft |

### 品牌资产协议

涉及具体品牌时强制执行 5 步硬流程:

| 步骤 | 动作 | 目的 |
|------|------|------|
| 1 · 问 | 用户有 brand guidelines 吗? | 尊重已有资源 |
| 2 · 搜 | 搜索品牌官方页面 | 获取真实素材 |
| 3 · 下 | 下载实际资产文件 | PNG/SVG logo、字体 |
| 4 · 验 | 验证颜色匹配官方来源 | 核对 hex 值 |
| 5 · 写 | 生成 brand-spec.md | 记录完整设计系统 |

质量门槛:5 个真实品牌色、10 个设计 token、2 个字体家族、8pt 间距网格。

### 五维评审

每个设计交付前必须通过 5 个维度的评审:

| 维度 | 评分标准 | 最低分 |
|------|----------|--------|
| 🎯 哲学一致性 | 设计是否贯彻了选定的设计哲学 | ≥ 7/10 |
| 📐 视觉层级 | 信息优先级是否清晰 | ≥ 7/10 |
| 🔧 细节执行 | 间距、字体、颜色是否精确 | ≥ 7/10 |
| ⚡ 功能性 | 布局是否服务用户目标 | ≥ 7/10 |
| ✨ 原创性 | 是否有 1 个签名细节 | ≥ 7/10 |

## 文件结构

```
swiftui-design-skill/
├── SKILL.md ← 核心定义(278 行)
├── references/
│ ├── anti-ai-slop.md ← 反 AI Slop 详细规则(268 行)
│ ├── layout-patterns.md ← 9 种布局模式 + 可复制代码(265 行)
│ ├── typography-color.md ← 字体层级 + 色彩系统(172 行)
│ ├── design-review.md ← 五维评审流程(151 行)
│ └── swift-extensions.md ← Color/Font/Animation 扩展(373 行,必备)
└── templates/
└── brand-spec.md ← 品牌规范模板(77 行)
```

## 与 swiftui-expert-skill 的区别

| | SwiftUI Design Skill | swiftui-expert-skill |
|---|---|---|
| **焦点** | 视觉设计、美学、品牌感 | 代码质量、性能、正确性 |
| **问题** | 「看起来怎么样?」 | 「代码写得对不对?」 |
| **输出** | 设计方向、色板、布局、评审 | 代码审查、Instruments 分析、API 现代化 |
| **互补** | 先用 design 确定方向 | 再用 expert 确保代码质量 |

两个 skill 可以配合使用:Design 确定「做什么」,Expert 确保「怎么做对」。

## License

MIT — 随便用,但请保留原作者署名。
127 changes: 127 additions & 0 deletions .claude/skills/swiftui-design-skill/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
<div align="center">

# SwiftUI Design Skill

> *"One prompt. A shippable SwiftUI interface."*

[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![Agent-Agnostic](https://img.shields.io/badge/Agent-Agnostic-blueviolet)](https://skills.sh)
[![Skills](https://img.shields.io/badge/skills.sh-Compatible-green)](https://skills.sh)

</div>

<p align="center">
<a href="README.md"><img src="https://img.shields.io/badge/English-blue?style=flat-square" alt="English"></a>
<a href="README-zh.md"><img src="https://img.shields.io/badge/中文-red?style=flat-square" alt="中文"></a>
</p>

**Type one line in your agent. Get back a SwiftUI interface that doesn't look AI-generated.**

In 3 to 30 minutes, you can design a **signature iOS interface** — not "AI-made-it-looks-okay" quality, but something that looks like it was crafted by a designer with taste.

Anti-AI Slop 6 Iron Rules, Design Direction Advisor, Brand Asset Protocol, 5-Dimension Review — all built in. Give the skill your brand palette and it will read your vibe; give nothing and the 5 built-in design languages will still hold their ground.

Works across agents — Claude Code, Cursor, Codex, OpenCode, Hermes, all supported.

## Install & Go

```bash
npx skills add wholiver/swiftui-design-skill -g -y
```

## What Can It Do

| Capability | Deliverable | Typical Time |
|------------|-------------|--------------|
| SwiftUI Interface Design | Compilable SwiftUI code · Design system tokens · Layout patterns | 10–15 min |
| Design Direction Advisor | 5 schools × N design philosophies · 3 recommended directions · Visual anchor descriptions | 5 min |
| Brand Asset Integration | brand-spec.md · Color palette · Typography · Spacing system | 5–10 min |
| Anti-AI Slop Review | Item-by-item check · Concrete fix code · Alternative approaches | 3–5 min |
| 5-Dimension Review | Radar chart scoring · Keep/Fix/Quick Wins · Actionable fix checklist | 3 min |
| Layout Pattern Library | 9 common layouts · Copy-paste SwiftUI code | Instant |
| Animation Design | Spring/parallax/pull-to-refresh · Compilable code | 5–10 min |

## Core Mechanisms

### Anti-AI Slop 6 Iron Rules

This is the hardest set of rules in the skill. All designs must pass these 6 checks:

| # | Iron Rule | ❌ Forbidden | ✅ Alternative |
|---|-----------|-------------|----------------|
| 1 | Start from context | Inventing from a blank canvas | Ask about design system / UI kit / brand assets first |
| 2 | Junior Designer Mode | Waiting for the perfect solution | Gray placeholder > bad SVG |
| 3 | Give variants, not finals | One "final answer" | 2–3 differentiated directions |
| 4 | Placeholder > bad implementation | AI-generated clip art | Clean gray placeholder + text label |
| 5 | System-first, don't fill | Packing every pixel | Every element must justify its existence |
| 6 | Ban AI slop patterns | Purple-blue gradients, emoji icons, rounded cards + left border | Single warm accent color, SF Symbols, serif headlines |

See `references/anti-ai-slop.md` for details.

### Design Direction Advisor

When requirements are vague, the skill recommends 3 differentiated directions from 5 major design schools:

| School | Characteristics | Signature Style |
|--------|-----------------|-----------------|
| **Informational** | Data-first, chart-dense | Bloomberg Terminal |
| **Editorial** | Magazine layout, serif type, generous whitespace | NYT, Medium |
| **Expressive** | Bold color, asymmetric layout, motion-forward | Stripe, Linear |
| **Functional** | Dense tool feel, monospace accents | Things, OmniFocus |
| **Warm Minimal** | Soft neutrals, rounded corners, subtle texture | Notion, Craft |

### Brand Asset Protocol

A mandatory 5-step hard process when working with a specific brand:

| Step | Action | Purpose |
|------|--------|---------|
| 1 · Ask | Does the user have brand guidelines? | Respect existing assets |
| 2 · Search | Search the brand's official pages | Obtain real materials |
| 3 · Download | Download actual asset files | PNG/SVG logos, fonts |
| 4 · Verify | Verify colors match official sources | Cross-check hex values |
| 5 · Write | Generate brand-spec.md | Record complete design system |

Quality threshold: 5 real brand colors, 10 design tokens, 2 font families, 8pt spacing grid.

### 5-Dimension Review

Every design must pass a 5-dimension review before delivery:

| Dimension | Scoring Criteria | Minimum Score |
|-----------|------------------|---------------|
| 🎯 Philosophy Consistency | Does the design embody the chosen design philosophy? | ≥ 7/10 |
| 📐 Visual Hierarchy | Is the information priority clear? | ≥ 7/10 |
| 🔧 Detail Execution | Are spacing, typography, and colors precise? | ≥ 7/10 |
| ⚡ Functionality | Does the layout serve user goals? | ≥ 7/10 |
| ✨ Originality | Is there at least 1 signature detail? | ≥ 7/10 |

## File Structure

```
swiftui-design-skill/
├── SKILL.md ← Core definition (278 lines)
├── references/
│ ├── anti-ai-slop.md ← Anti-AI Slop detailed rules (268 lines)
│ ├── layout-patterns.md ← 9 layout patterns + copy-paste code (265 lines)
│ ├── typography-color.md ← Typography hierarchy + color system (172 lines)
│ ├── design-review.md ← 5-Dimension Review process (151 lines)
│ └── swift-extensions.md ← Color/Font/Animation extensions (373 lines, essential)
└── templates/
└── brand-spec.md ← Brand spec template (77 lines)
```

## Difference from swiftui-expert-skill

| | SwiftUI Design Skill | swiftui-expert-skill |
|---|---|---|
| **Focus** | Visual design, aesthetics, brand feel | Code quality, performance, correctness |
| **Question** | "How does it look?" | "Is the code correct?" |
| **Output** | Design direction, color palette, layout, review | Code review, Instruments analysis, API modernization |
| **Complementary** | Use Design first to set direction | Then use Expert to ensure code quality |

The two skills work together: Design decides **what to build**, Expert ensures **how to build it right**.

## License

MIT — use freely, but please keep the original author attribution.
57 changes: 57 additions & 0 deletions .claude/skills/swiftui-design-skill/RELEASE-v1.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
## SwiftUI Design Skill v1.0.0

> 一句话,一个能交付的 SwiftUI 界面。

首个正式版本。跨 agent 通用的 SwiftUI 前端视觉设计 skill——不 AI slop。

### ✨ 内置能力

| 能力 | 说明 |
|------|------|
| 反 AI Slop 六条铁律 | 6 条硬规则 + 详细参考文档 |
| 设计方向顾问 | 5 大设计流派 × N 种哲学,推荐 3 方向 |
| 品牌资产协议 | 5 步硬流程,从问到写 brand-spec.md |
| 五维评审 | 哲学一致性 / 视觉层级 / 细节执行 / 功能性 / 原创性 |
| 布局模式库 | 9 种常见布局,可复制 SwiftUI 代码 |
| 字体与色彩系统 | 层级字体 + 色彩 token + 设计系统模板 |
| Swift 扩展 | Color(hex:)、动画模式、SF Symbols 指南 |

### 📦 安装

```bash
npx skills add wholiver/swiftui-design-skill -g -y
```

### 📁 文件结构

```
swiftui-design-skill/
├── SKILL.md ← 核心定义(278 行)
├── references/
│ ├── anti-ai-slop.md ← 反 AI Slop 详细规则(268 行)
│ ├── layout-patterns.md ← 9 种布局模式(265 行)
│ ├── typography-color.md ← 字体层级 + 色彩系统(172 行)
│ ├── design-review.md ← 五维评审流程(151 行)
│ └── swift-extensions.md ← Color/Font/Animation 扩展(373 行)
└── templates/
└── brand-spec.md ← 品牌规范模板(77 行)
```

### 🎯 与 swiftui-expert-skill 的区别

| | SwiftUI Design Skill | swiftui-expert-skill |
|---|---|---|
| 焦点 | 视觉设计、美学、品牌感 | 代码质量、性能、正确性 |
| 问题 | 「看起来怎么样?」 | 「代码写得对不对?」 |

### 📋 Changelog

- ✅ 反 AI Slop 六条铁律 + 详细参考
- ✅ 设计方向顾问(5 流派)
- ✅ 品牌资产协议(5 步流程)
- ✅ 五维评审系统
- ✅ 9 种布局模式 + 可复制代码
- ✅ 字体层级与色彩系统
- ✅ Swift 扩展(Color/Font/Animation)
- ✅ 品牌规范模板
- ✅ MIT License
Loading
Loading