mcpField
M
mobile-design

mobile-design

github.com/aiskillstore设计与 UI44662 次安装今天更新
代码仓库

关于 mobile-design

Mobile Design System 是指导移动应用设计与实现的 skill,面向设计和开发人员。它通过可行性评估、平台规范和性能、安全检查,减少把桌面思路套用到移动端的风险。

主要功能

  1. 01移动功能可行性与风险评分
  2. 02设计前明确平台和技术约束
  3. 03触控交互与无障碍规范
  4. 04性能、电量与离线考量
  5. 05安全和发布就绪检查

适用场景

  1. 01评估新移动功能的实现风险
  2. 02为 iOS、Android 或跨平台应用制定设计方案
  3. 03检查触控、无障碍与平台交互规范
  4. 04发布前审查性能、离线和安全事项

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aiskillstore/marketplace --skill mobile-design

安装后在 Claude Code 中输入/mobile-design确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

decision-trees.md
mobile-backend.md
mobile-color-system.md
mobile-debugging.md
mobile-design-thinking.md
mobile-navigation.md
mobile-performance.md
mobile-testing.md
mobile-typography.md
platform-android.md
platform-ios.md
skill-report.json
touch-psychology.md
scripts/
mobile_audit.py

详细介绍

移动端设计系统

(移动优先 · 触控优先 · 尊重平台)

理念: 触控优先。关注电量。尊重平台。支持离线。 核心法则: 移动端不是缩小版的桌面端。 行动准则: 先考虑约束,再考虑美学。

本技能的存在是为了在设计和构建移动应用时防止桌面端思维、AI 默认套路以及不安全的假设。


1. 移动端可行性及风险指数(MFRI)

在设计或实现任何移动端功能或界面之前,先评估可行性。

MFRI 维度(1–5)
维度问题
平台明确性目标平台(iOS / Android / 两者)是否有明确定义?
交互复杂度手势、流程或导航有多复杂?
性能风险是否涉及列表、动画、繁重状态或媒体?
离线依赖该功能在无网络时是否会失效或降级?
无障碍风险是否影响运动、视觉或认知无障碍?
评分公式
MFRI = (Platform Clarity + Accessibility Readiness)
       − (Interaction Complexity + Performance Risk + Offline Dependence)

范围: -10 → +10

解读
MFRI含义所需操作
6–10安全正常推进
3–5中等增加性能 + UX 验证
0–2有风险简化交互或架构
< 0危险在实现前重新设计

2. 任何工作前的强制思考

⛔ 停:先询问,勿假设(必须遵守)

如果以下任一项未被明确说明,你必须在继续之前询问:

方面问题原因
平台iOS、Android 还是两者?影响导航、手势、字体排版
框架React Native、Flutter 还是原生?决定性能和模式
导航标签页、栈、抽屉?核心 UX 架构
离线是否必须离线可用?数据与同步策略
设备仅手机还是也包括平板?布局与密度规则
受众消费者、企业、无障碍需求?触控与可读性

🚫 切勿默认使用你偏爱的技术栈或模式。


3. 强制参考阅读(强制执行)

通用(始终先阅读)
文件用途状态
mobile-design-thinking.md反死记硬背,强制结合上下文🔴 必须首先阅读
touch-psychology.md费茨定律、拇指区、手势🔴 必须阅读
mobile-performance.md60fps、内存、电池🔴 必须阅读
mobile-backend.md离线同步、推送、API🔴 必须阅读
mobile-testing.md设备与 E2E 测试🔴 必须阅读
mobile-debugging.md原生与 JS 调试🔴 必须阅读
平台特定(按条件)
平台文件
iOSplatform-ios.md
Androidplatform-android.md
跨平台上述两者

❌ 如果你尚未阅读平台文件,则不允许设计 UI。


4. AI 移动端反模式(严格禁止)

🚫 性能之罪(不可妥协)
❌ 绝不原因✅ 始终
用 ScrollView 渲染长列表内存爆炸FlatList / FlashList / ListView.builder
内联 renderItem导致所有行重新渲染useCallback + memo
用索引作为 key排序 bug稳定 ID
JS 线程动画卡顿原生驱动 / GPU
生产环境使用 console.log阻塞 JS 线程移除日志
不做 memoization耗电 + 性能损耗React.memo / const widgets

🚫 触控与体验之罪
❌ 绝不原因✅ 始终
触控目标 <44–48px点按失败最小触控目标
仅支持手势操作排除部分用户提供按钮备用方案
无加载状态感觉像坏了明确反馈
无错误恢复死路一条重试 + 提示信息
忽视平台规范破坏肌肉记忆iOS ≠ Android

🚫 安全之罪
❌ 绝不原因✅ 始终
将 Token 存入 AsyncStorage容易被窃取SecureStore / Keychain
硬编码密钥可被逆向工程环境变量 + 安全存储
无 SSL pinning存在 MITM 风险证书 pinning
记录敏感数据泄露 PII绝不记录密钥

5. 平台统一与分化矩阵

UNIFY                          DIVERGE
──────────────────────────     ─────────────────────────
Business logic                Navigation behavior
Data models                    Gestures
API contracts                  Icons
Validation                     Typography
Error semantics                Pickers / dialogs
平台默认值
元素iOSAndroid
字体SF ProRoboto
最小触控44pt48dp
返回边缘滑动系统返回
底部面板Bottom sheetDialog / sheet
图标SF SymbolsMaterial Icons

6. 移动端体验心理学(非可选)

费茨定律(触控现实)
  • 手指 ≠ 光标
  • 精度很低
  • 可达性比精确性更重要

规则:

  • 主要 CTA 位于 拇指区
  • 危险操作远离拇指区
  • 不要假设有悬停

7. 性能准则

React Native(必需模式)
const Row = React.memo(({ item }) => (
  <View><Text>{item.title}</Text></View>
));

const renderItem = useCallback(
  ({ item }) => <Row item={item} />,
  []
);

<FlatList
  data={items}
  renderItem={renderItem}
  keyExtractor={(i) => i.id}
  getItemLayout={(_, i) => ({
    length: ITEM_HEIGHT,
    offset: ITEM_HEIGHT * i,
    index: i,
  })}
/>
Flutter(必需模式)
class Item extends StatelessWidget {
  const Item({super.key});

  @override
  Widget build(BuildContext context) {
    return const Text('Static');
  }
}
  • 尽可能使用 const
  • 仅做定向重建

8. 强制移动端检查点

在编写 任何代码 之前,你必须完成以下内容:

🧠 MOBILE CHECKPOINT

Platform:     ___________
Framework:    ___________
Files Read:   ___________

3 Principles I Will Apply:
1.
2.
3.

Anti-Patterns I Will Avoid:
1.
2.

❌ 无法完成 → 回去重读。


9. 框架决策树(规范)

Need OTA + web team → React Native + Expo
High-perf UI → Flutter
iOS only → SwiftUI
Android only → Compose

没有理由就不要争论。


10. 发布就绪检查清单

发布前
  • 触控目标 ≥ 44–48px
  • 已处理离线
  • 已使用安全存储
  • 列表已优化
  • 日志已移除
  • 已在低端设备上测试
  • 已提供无障碍标签
  • MFRI ≥ 3

11. 相关技能

  • frontend-design – 视觉系统与组件
  • frontend-dev-guidelines – RN/TS 架构
  • backend-dev-guidelines – 移动端安全 API
  • error-tracking – 崩溃与性能遥测

最终法则: 移动端用户注意力分散、常被打断、缺乏耐心——常常单手操作、网络很差、电量很低。 为这样的现实而设计,否则你的应用会悄无声息地失败。


何时使用

本技能适用于执行概述中描述的工作流或操作。

限制

  • 仅当任务明确符合上述范围时使用本技能。
  • 不要将输出视为针对特定环境验证、测试或专家评审的替代品。
  • 如果缺少必需输入、权限、安全边界或成功标准,请停下来请求澄清。

评论

支持 Markdown