

2026 / UX/产品设计 · 独立项目
饭搭子
Food Companion
让一餐记录,成为再次参与的起点。
一款食宠陪伴式饮食记录 App,面向想了解日常饮食、却不希望每餐都重复填写和计算的年轻人。我将拍照、核对、食宠回应和日记回顾组织成个人体验,再以自愿分享连接熟人陪伴与家园积累。
研究、产品策略、交互与视觉、AI 辅助资产生产及原型开发。主要工具:Figma、Codex、Godot 与 Python。
- 我的职责
- 独立 UX/产品设计;研究、交互、视觉、AI 辅助资产生产与原型开发
- 完成阶段
- Figma 设计与 Godot 本地交互原型;真实 AI 效果与跨用户体验待验证
研究与洞察
记录以后,为什么还愿意再来?
重复输入
忙碌时,每次搜索、填写与计算都增加参与成本。
数字难懂
热量与营养数据需要被解释,才能连接到下一餐。
反馈较慢
真实变化无法立刻看到;记录完成也需要即时回应。
意愿与持续行动之间
行业报告中的习惯分布,提示轻量化的必要;它不能证明食宠方案有效。
- 长期坚持37.4%
- 不稳定,经常中断35.5%
- 偶尔尝试,难坚持24.1%
- 完全没有3.0%
过去一年健康相关消费去向
多选 · 各项不构成总量占比
竞品提供的不是空白市场,而是不同体验重心
将公开产品说明与归档调研并读,比较记录、理解和关系参与如何被组织。以下是定性设计判断,不以分数暗示优劣,也不把未覆盖的功能判定为不存在。
| 产品 | 体验重心 | 关系参与 | 设计启发 |
|---|---|---|---|
| MyFitnessPal ↗ | 日记、营养目标、分析 | 可设置日记可见范围与好友分享 | 保留记录结构,降低理解和填写负担 |
| Foodvisor ↗ | 餐食追踪、个性化计划、种子养成 | 花园装扮与社区鼓励 | 养成已有先例;需说明熟人陪伴与解释机制的差异 |
| BiteSnap | 照片记录与视觉回顾 | 本次归档资料未充分覆盖关系功能 | 让照片成为回顾入口 |
| 薄荷健康 ↗ | 食物库、饮食记录与管理方案 | 社区内容与健康经验 | 结构化信息仍需易懂的回应 |
| 食卡卡 ↗ | 热量、营养与身体数据管理 | 本次比较以公开的记录管理信息为主 | 估算与身体数据应分开表达 |
| 卡迈健康 | 饮食、体重与打卡 | 归档调研记录了好友打卡与鼓励 | 关心可被邀请,也需要退出与边界 |
资料核对:2026-10-11。BiteSnap 与卡迈在此保留归档调研判断;未完成最新版本实测,公开页面本次也未能稳定访问。饭搭子的差异化是假设:用可解释回应连接个人记录与自愿的熟人关心。
观察内容如何变成关心
小红书:观察健康内容如何被理解、收藏和转发,成为熟人对话的起点。
抖音:观察参与者原有的日常分享与回应习惯;共同维护的“小火人”等对象既提供连接,也可能带来连续打卡压力。
平台选择基于研究问题与参与者情境;没有渠道效果的量化对比。
5 对好友 + 5 对情侣
共 20 人、10 组,在既有社交情境中观察餐食分享与回应。研究关注参与线索,尚未进入已上线 App 的使用评估。
组在观察期内持续分享餐食
按组统计;无每日频次阈值、对照组或逐日原始记录。此结果不是 App 留存率,也不证明健康改善。
- 分享餐食
让真实生活成为低成本入口
- 收到回应
完成记录后先得到可理解的反馈
- 留下共同对象
用食宠和空间承接记忆
- 保留自主权
邀请、跳过、暂停都应自然
策略与体验系统
从三个断点走向四项原则:让开始更轻、反馈更清楚、回应不评判,并为关系参与保留选择。个人记录是一条完整路径,共养是它的延伸。
轻量记录
以照片开始,先核对再保存;减少输入,同时保留用户确认权。
看懂依据
把回应连回具体记录,说明估算与未知,给出可选择的下一步。
温和回应
用食宠表达接住一次参与;不以缺席惩罚用户,也不把角色当健康仪表。
自愿共养
先完成个人体验,再邀请搭子;记录独立,分享内容与提醒由用户决定。
一次记录的完整闭环
- 01餐食输入
- 02核对确认
- 03食宠回应
- 04记录解释
- 05日记回顾
- 06可选分享
- 07共同养成与家园积累
记录层
照片 → 候选 → 确认 → 本地保存
确认前不进入日记;未知营养不填零。
理解层
食宠主页 → 原因解释 → 回顾与计划
已记录与未估算分开,角色表达与人体状态分开。
关系层 / 可选
邀请 → 独立食宠 → 自愿关心 → 小窝
两人各自确认记录;分享不等于合并数据。
让生活情境成为旅程的骨架
01午餐很忙
直接记录一餐
02拍摄/导入
用照片替代重复填写
03核对与保存
修正标题、餐次与份量
04理解回应
查看已确认记录的依据
05日记与收藏
回看生活,计划下一餐
06自愿分享
邀请搭子,留下空间积累
旅程是根据研究整理的设计情境与预期体验,不是实测满意度或情绪曲线。
记录与收藏
减少记录负担,同时把最后一次确认留给用户。
从一餐开始
拍摄或导入照片,也允许只保存照片。相机为设计中的模拟入口;本地原型已实现文件导入。
Figma 原始 UI · 点击图片查看完整界面
核对识别候选
识别结果先进入确认页,不自动成为记录。用户核对标题、餐次与份量,再决定保存。
Figma 原始 UI · 点击图片查看完整界面
调整份量
以轻量选项修正份量,避免重复填写。Godot 已实现标题、餐次和份量调整;逐项增删食材尚未完整实现。
Figma 原始 UI · 点击图片查看完整界面
确认后保存
用完成反馈承接记录。Figma 设计包含自动返回;Godot 以完成页按钮返回,二者的细节仍需统一。
Figma 原始 UI · 点击图片查看完整界面
回到饮食日记
餐食按日期留下可回顾的线索。本地原型保存照片与记录;没有营养估算时明确标记“未估算”,不以零代替未知。
Figma 原始 UI · 点击图片查看完整界面
收藏这一餐
贴纸把重复记录变成可见的生活收藏。界面与素材已形成;真实照片生成贴纸的质量仍需接入服务验证。
Figma 原始 UI · 点击图片查看完整界面
识别是候选,确认才是记录
照片可以降低输入成本,但无法保证每项食物与份量都正确。让用户先检查再保存,保留纠错入口;AI 不可用时仍可留下照片与文字。
这一设计将“完成输入”与“可理解的回应”连接:记录进入日记,贴纸形成收藏,下一餐计划成为可选择的后续。




已有风格素材,不是本次真实照片识别或贴纸生成结果。
食宠与陪伴
食宠先回应个人的参与,再把关心延伸给愿意加入的搭子。两人各有食宠、各有记录;共同空间承载联系,不替对方确认,也不合并身体数据。
四种表达方向,需要可解释的依据

精力
角色的活跃与休息;不推断真实疲劳。

饱腹
餐后的满足表达;实际饱腹感仍需本人反馈。

消化
餐后节奏的设计方向;规则仍待验证。

睡眠
晚间休息提醒;不判断用户睡眠质量。
以上是表达方向与现有角色素材的组合,不是四套已验证的生理映射。
回应后,说明为什么
例如,用户确认晚间饮品与时间后,设计以休息提醒回应,并允许查看本餐依据、选择下一步。角色看起来困倦,不意味着系统判断用户已经失眠。
心情由用户主动表达。缺少记录不会自动被解释为悲伤、焦虑或不健康。
家园与家具
把持续参与,变成留得下的空间。
把参与留下来
每日参与通向家具积累,图鉴说明解锁条件。当前原型用模拟天数验证奖励路径,不代表已验证长期留存。
Figma 原始 UI · 点击图片查看完整界面
领取今日家具
将完成感落实为一件可摆放的家具。已领取物品保留,模拟天数减少时不会收回。
Figma 原始 UI · 点击图片查看完整界面
查看家具图鉴
32 件家具按用途分类,连接当前拥有、下一件奖励和长期目标。原型初始拥有两件,可模拟领取其余 30 件。
Figma 原始 UI · 点击图片查看完整界面
拖动、缩放与整理
真实 Godot 运行画面:支持移动、缩放、前后层级与收起。编辑模式暂时隐藏食宠,减少遮挡。
Godot 归档运行截图 · 本地交互原型
保存,回到小窝
草稿与已保存布局分开;取消不覆盖旧布局,保存后可重新载入。我的家与搭子家目前是同一设备上的两套布局,尚无跨账号同步。
Godot 归档运行截图 · 本地交互原型
32 件家具,共用一套柔和的形体语言
精选 8 件;完整图鉴共 32 件,已与工程家具映射表核对。早期 Figma 类别与运行原型的标签仍有差异。
可看见的积累
下一件家具清楚可见;中断不抹除已有物品。
可恢复的操作
拖动、缩放、层级和收起,配合保存与取消。
需要验证的长期体验
奖励是否让记录更轻松,而不是形成新的打卡压力?
AI 辅助工作流
设计判断贯穿全程,AI 协助把判断变成可检查的产出。
这里展示的是我如何运用 AI 制作资产和辅助开发。App 中的食物识别、营养处理与贴纸生成是另一层产品功能,其真实服务效果仍需验证。
- 01 / 人工主导定义方向
问题、研究、规则、信息架构与视觉约束
- 02 / AI 辅助 + 人工判断生产与修订素材
提示词 → 生成 → 筛选修正 → 统一资产
- 03 / Figma → Codex → Godot实现交互
界面 → 场景/组件 → 脚本 → 本地原型
- 04 / 人工检查 + 自动验证检查与迭代
运行对照 → 问题定位 → 修改 → 回归检查
先明确什么值得做,再规定什么算做好
我先确定“确认才记录、回应可解释、分享可选择”的产品规则,再组织记录、理解与关系三层架构。AI 不替代研究结论、信息层级或最终视觉判断。
视觉约束使用奶油色与低饱和绿,区分平面情境插画、柔和食宠和家具。角色的大头短身、奶油口鼻、深色鼻爪、桃色脸颊与两片绿叶作为连续识别。
- 设计输入
- 研究断点与关系边界
- 可检查的产出
- 流程、UI 状态、组件与素材约束
从生成结果到统一的产品资产
归档中保留了插画提示词、初始输出与眼睛修订版本。我的工作是设置风格约束、挑选可用结果,并检查局部修改是否破坏构图、色彩或角色识别。
“muted forest green #527B64, sage #CFDCC6, mist blue #DDEAF0, warm cream and peach skin”
修订约束:深绿色实心竖椭圆眼;无眼白、高光、睫毛。来自 assets_v8/prompts_final.json。
- 定义约束
比例、画风、色彩、透明边缘
- 辅助生成
按场景和用途提出明确需求
- 筛选与修订
保留构图,修正局部不一致
- 归类与接入
独立命名、尺寸核查、UI 复用
从视觉状态到可以运行的交互
我用 Figma 定义界面与状态,通过 Codex 辅助把页面拆成 Godot 场景、复用组件和脚本。关键工作从“界面像不像”转向“输入、确认、保存与回退是否一致”。
同一记录更新,避免重复计入
var updated := records.filter(func(item): return item.id != id)
updated.push_front(saved)
if not write_records(updated): return false
records = updated
last_saved = saved.duplicate(true)
view.record = saved
app.show_page("165:1510" if planned else "165:1308")
return true原代码摘录。以已有 id 过滤并更新,写入成功后才更新内存与跳转。
页面与组件
main.gd / surface.gd路由、返回、弹层和原生 Control 排版
餐食数据链
food_view.gd / food_flow.gd文件导入、确认、记录保存与汇总
空间编辑
room_editor.gd / room_canvas.gd拖动、缩放、层级、草稿与恢复
归档提供真实 Figma 导出、场景与脚本,以及运行截图;没有独立 Godot 编辑器操作截图,因此不以模拟编辑器画面补齐。
用状态与数据边界检查原型
没有 AI 也能记录
问题:缺少估算容易被误读为零。调整:保留 photo_only,并明确未估算。验证:导入、保存、重载均不伪造营养。
重复编辑不重复累计
问题:编辑后可能变成新记录。调整:按原 id 更新。验证:归档检查确认修改不重复计入。
布置可以取消与恢复
问题:草稿不应覆盖已保存空间。调整:区分草稿与持久化布局。验证:保存与重载、32 件家具纹理均已检查。
归档包检查通过
无界面运行,包含启动与导航、32 件家具纹理、布局保存重载、照片与日记重载、未估算标记和重复编辑。使用隔离演示数据,live_ai=false。
服务单元测试通过
核对鉴权、图片规范化、数值验证、无密钥不请求、非食物不赋热量及透明贴纸校验。使用模拟传输,不调用付费模型。
查看 49 项原始检查名称
- copied pack starts in pet home
- navigation 165:1308
- navigation 165:1510
- navigation 165:1669
- navigation 165:1833
- navigation 199:2313
- edit mode hides pet without replacing art
- synthetic day 32 claims 30 remaining furniture
- furniture texture sage-armchair
- furniture texture sage-sofa
- furniture texture paw-rug
- furniture texture coffee-table
- furniture texture arch-bookcase
- furniture texture low-cabinet
- furniture texture peach-cushion
- furniture texture pet-bed
- furniture texture bedside-table
- furniture texture blanket-basket
- furniture texture beanbag
- furniture texture drawer-chest
- furniture texture standing-mirror
- furniture texture cream-cushion
- furniture texture dining-table
- furniture texture dining-chair
- furniture texture tea-cart
- furniture texture kitchen-cabinet
- furniture texture pantry-shelf
- furniture texture fridge
- furniture texture round-tea-cart
- furniture texture snack-basket
- furniture texture trailing-plant
- furniture texture leaf-stool
- furniture texture floor-lamp
- furniture texture wall-lamp
- furniture texture curtain-window
- furniture texture leaf-art
- furniture texture wall-clock
- furniture texture wall-shelf
- furniture texture arched-door
- furniture texture corner-module
- save room arrangement
- write isolated room fixture
- room arrangement reload
- photo import has no fabricated nutrition
- save isolated photo-only diary fixture
- photo-only is explicitly unestimated
- editing record does not duplicate totals
- diary and photo reload from archive fixture
- receipt can return to room home
来源:20261011_本次验证 / archive_pack_result.json 与 AI_SERVICE_UNIT_TESTS.log。以上验证不等于完整人工 GUI 验收、手机性能测试、真实 AI 质量或用户效果评估。
原型与反思
项目从产品规则、界面和资产走到本地交互原型。对我而言,技术落地的价值是让设计判断能够被操作和检查,而不是把工具数量当作成果。
| 产出 | 当前状态 | 下一步 |
|---|---|---|
| 63 个 Figma 界面 | 含页面、弹层与反馈;新增 11 页健康旅程属于设计提案。 | 统一流程细节,新增页面同步到原型。 |
| Godot 本地原型 | 55 个场景;文件导入、确认、本地日记与家具编辑已实现。无 Web 部署。 | 人工逐页验收与真实设备性能测试。 |
| App 内 AI 服务 | 接口、失败处理与单元测试已形成;真实识别、估算和贴纸质量未验证。 | 在授权环境下用真实餐食测试准确性、不确定性与失败恢复。 |
| 双人陪伴 | 交互设计与本地布局成立;未实现真实跨账号同步。 | 验证邀请、共享边界、退出和真实双方体验。 |
新一轮设计:从单餐反馈走向共同计划
以上来自最新 Figma 的 Health 3.0 设计,尚未同步到当前 Godot 原型。App UI 原图保留中文;本网页的说明、交互标签与导航提供中英文。
回应能否被正确理解?
观察用户能否区分角色表达、估算和本人感受,是否会把提醒理解为诊断。
陪伴是否形成负担?
检验自愿分享与轻互动是否自然;暂停和退出是否真的无负担。
积累是否支持再次参与?
在真实使用中验证家具与贴纸是否增加意义;不以三周分享结果代替留存测试。
让一次记录得到回应,也让用户始终保有选择。
本页展示最新归档的真实界面、素材与运行截图。Figma 原型与公开代码链接已于 2026-10-11 匿名验证;Godot 当前为本地原型,尚无网页版。

