mcpField
A
airbnb-ui-skills

airbnb-ui-skills

github.com/ihlamury设计与 UI102391 次安装37 周前更新
代码仓库

关于 airbnb-ui-skills

面向 AI Agent 的 Airbnb 风格界面设计规范,适用于浅色界面和设计系统。它为颜色、字体、布局和交互提供约束,并涉及可访问性与性能。

主要功能

  1. 01Airbnb 风格设计约束
  2. 02颜色与语义令牌
  3. 03Inter 字体与排版规范
  4. 044px 网格与布局规则
  5. 05交互、动画及性能要求

适用场景

  1. 01构建浅色模式界面
  2. 02创建 Airbnb 风格设计系统
  3. 03使用 Inter 和 4px 网格实现 UI

安装

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

$npx skills add https://github.com/ihlamury/design-skills --skill airbnb-ui-skills

安装后在 Claude Code 中输入/airbnb-ui-skills确认已加载。

附带文件metadata.json

详细介绍

Airbnb UI 技能

使用 AI Agent 构建 Airbnb 风格界面时应遵循的约束。

适用场景

在以下情况中参考这些指南:

  • 构建浅色模式界面
  • 创建受 Airbnb 启发的设计系统
  • 使用 Inter 字体和 4px 网格实现 UI

颜色

  • SHOULD 为主要表面使用浅色背景
  • MUST 将 #FEFEFE 用作页面背景(surface-base)
  • SHOULD 精简调色板(当前检测到 13 种颜色)
  • MUST 将文本对比度保持在至少 4.5:1,以满足无障碍要求
语义令牌
令牌HEXRGB用途
surface-base#FEFEFErgb(254,254,254)页面背景
surface-raised#EEEBE4rgb(238,235,228)卡片、模态框、凸起表面
surface-overlay#D5D3D1rgb(213,211,209)覆盖层、工具提示、下拉菜单
text-primary#8F8F8Frgb(143,143,143)标题、正文文本
text-2#5C5955rgb(92,89,85)其他文本
text-secondary#686868rgb(104,104,104)次要、弱化文本
border-default#E6DECCrgb(230,222,204)细边框、分隔线
destructive#E25275rgb(226,82,117)错误状态、删除操作
warning#E6DECCrgb(230,222,204)警告状态、注意事项

排版

  • MUST 使用 Inter 作为主要字体系列
  • SHOULD 使用单一字体系列以保持一致性
  • MUST 将主要标题设为 19px / 500
  • MUST 将正文文本设为 15px / 400
  • MUST 将字体粗细限制为:light、regular、medium
  • MUST 对标题使用 text-balance,对正文文本使用 text-pretty
  • SHOULD 对数值数据使用 tabular-nums
  • NEVER 在未明确要求时修改字间距
文本样式
样式字体大小粗细颜色数量
heading-1Inter19px500#4A4A4A1
heading-2Inter19px500#E252751
heading-3Inter15px300#C3C0BC1
bodyInter15px400#9191911
body-secondaryInter15px500#4949491
body-secondaryInter15px500#4747471
body-secondaryInter14px400#9191915
body-secondaryInter14px300#9191913
body-secondaryInter14px300#9292923
body-secondaryInter14px400#9090901
排版参考

字体系列:

  • Inter(使用 65 次)

字体大小: 6px、8px、9px、10px、11px、13px、14px、15px、19px

间距

  • MUST 使用 4px 网格设置间距
  • SHOULD 使用以下间距刻度:1px、2px、3px、5px、6px、9px、10px、41px
  • SHOULD 将 2px 设为元素间的默认间距
  • NEVER 使用任意间距值(使用设计刻度)
  • SHOULD 保持容器内边距一致

边框

  • MUST 使用以下圆角刻度:11px、12px、13px、14px、28px
  • SHOULD 为药丸形元素使用 28px 及以上的圆角
  • MUST 始终使用 1px 边框宽度
  • SHOULD 将 11px 设为默认圆角
  • NEVER 使用任意圆角值(使用设计刻度)
  • SHOULD 使用细边框(1px)分隔元素
圆角参考

刻度: 11px、12px、13px、14px、28px

布局

  • MUST 按 1920px 的基础视口宽度进行设计
  • SHOULD 使用一致的元素宽度:249px、24px、97px、28px、78px
  • SHOULD 保持以文本为主的布局,并建立清晰的层级
  • NEVER 使用 h-screen,全视口高度请使用 h-dvh
  • MUST 为固定元素遵循 safe-area-inset
  • SHOULD 对正方形元素使用 size-*,而非 w-* + h-*
检测到的布局模式
  • 主要内容:宽度:1920px,高度:1080px
  • 主要内容:宽度:1920px,高度:879px

组件

  • MUST 将输入字段的高度设为 0px
按钮
变体背景文本边框高度圆角
Ghost透明#5C5955无--
输入框
  • 高度:0px

交互状态

焦点
  • MUST 使用 2px 轮廓,并采用强调色(#5E6AD2)
  • MUST 使用 2px 的轮廓偏移
  • NEVER 移除焦点指示器
悬停
  • 按钮(主要):将背景颜色调亮 10%
  • 按钮(次要):使用 #EEEBE4 背景
  • 列表项:使用 #EEEBE4 背景
禁用
  • MUST 使用 opacity: 0.5
  • MUST 使用 cursor: not-allowed

交互

  • MUST 对破坏性或不可逆操作使用 AlertDialog
  • SHOULD 使用结构化骨架屏表示加载状态
  • MUST 在操作发生的位置附近显示错误
  • NEVER 阻止在 input 或 textarea 元素中粘贴
  • MUST 为仅含图标的按钮添加 aria-label

动画

  • NEVER 添加未明确请求的动画
  • MUST 仅对合成器属性(transform、opacity)添加动画
  • NEVER 对布局属性(width、height、top、left、margin、padding)添加动画
  • SHOULD 在入场动画中使用 ease-out
  • NEVER 将交互反馈时长设为超过 200ms
  • SHOULD 遵循 prefers-reduced-motion

性能

  • NEVER 对大面积 blur() 或 backdrop-filter 表面添加动画
  • NEVER 在动画未激活时使用 will-change
  • NEVER 对可用渲染逻辑表达的内容使用 useEffect

评论

支持 Markdown