关于 interfaces-that-feel
Interfaces That Feel 是一项设计技能,用于评估界面的文案、时机和动效如何影响人的体验。它从用户的情绪状态出发,将其转化为具体的界面行为。
主要功能
- 01从用户的感受状态出发
- 02将物理感受转化为交互行为
- 03设计情绪节奏
- 04按界面状态调整文案语气
- 05检查动效及减少动态效果的表现
适用场景
- 01审查错误恢复和后续操作
- 02设计加载与空状态
- 03调整动效以传达恰当反馈
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ owl-listener/ designer-skills --skill interfaces-that-feel安装后在 Claude Code 中输入/interfaces-that-feel确认已加载。
详细介绍
让界面令人感同身受
你用一个问题来评估界面:使用它时,你是否觉得这是一个真正考虑过你感受的人设计的?
技术正确只是底线。上限是情感上的清晰可感——产品知道你是一个有血有肉的人。
你做什么
你将设计意图转化为切身体验。你从使用者当下的状态出发(而不是他们正在执行的任务),在现实世界中为这种感受找到恰当的表达,然后将其映射为界面中的行为特性。
转化流程
1. 描述切身状态 —— 这个人来到此刻时,实际正在经历什么?焦虑地等待。从错误中恢复。为一个小小的胜利庆祝。被各种选项压得不知所措。
2. 找到现实中的对应物 —— 现实世界中,什么事物具有类似的特质?柔软的表面能吸收冲击。呼气前屏住的一口气。一扇门缓缓打开。这就是行为表达的词汇库。
3. 提取行为特性 —— 从现实对应物中提取:重量、阻力、速度、恢复曲线、节奏。
4. 应用到界面中 —— 哪一层能承载这种特性?缓动曲线、延迟、文案语气、色温、间距、动画时长。
情感时机原则
- 信息的分量:重要消息应缓缓呈现;好消息可以即时呈现
- 留出恢复空间:发生错误后,在显示下一个提示前给用户 300–600ms 的时间——不要催促他们恢复
- 系统错误带来的羞耻感:绝不要让用户觉得系统故障是他们的责任;文案必须由系统承担责任
- 庆祝的节奏:微小的胜利值得肯定;不要默默略过
- 加载即情绪:加载状态并非中性的——它会设定预期;应与接下来的内容相匹配
不同状态下的文案语气
| 状态 | 语气 |
|---|---|
| 加载 | 及时、平静——“正在获取你的数据”,而不是“加载中……” |
| 空状态 | 邀请式——告诉用户这里适合放什么 |
| 错误(用户导致) | 清晰、明确、不责备——给出一个具体的下一步 |
| 错误(系统导致) | 承担责任,简短致歉,并提供解决路径 |
| 成功 | 温暖、简短——表示认可,但不过度 |
| 引导 | 结合情境,而不是教程式——说明用户可以做什么,而不是如何使用应用 |
作为情感信号的动效
缓动传达意图。缓入意味着分量和惯性。缓出意味着自然减速,就像某种柔软的东西轻轻落下。线性运动显得机械——凡是触及人的感受,都应避免使用。
弹簧物理效果传达响应感。刚度和阻尼是情感层面的决定:刚硬的弹簧显得利落、自信;松弛的弹簧则显得俏皮、宽容。
时长:UI 响应为 150–300ms。承载意义的转场为 400–600ms。动画时长绝不要超过用户对该任务的耐心。
评审清单
每轮设计前后都要确认:
- 用户进入这个状态时有什么感受?
- 界面是在回应这种感受,还是忽略了它?
- 文案听起来像是人写的吗?
- 动效传达了意图,还是只是在消磨时间?
- 如果去掉所有颜色和图像,情感信号还能保留下来吗?
参考风格
How We Feel、Headspace、Gentler Streak、Amie、Arc Browser——这些产品让情感时机、文案语气和动效发挥作用,而不是仅作装饰。
最佳实践
- 从用户的切身状态出发,而不是从任务出发
- 将文案视为交互设计——每个字都是一个决定
- 先减少动效,再考虑添加;每个动画都必须有存在的理由
- 在启用减少动态效果偏好的情况下进行测试
- 没有摩擦不等于温暖——温暖是主动的,而非被动的