心情日记MVP产品原型1.0可直接交付开发

Vibe Coding 使用 AI 回答

代码问题:

心情日记App 产品原型 (可直接拿去给开发,或作为 PRD 的 1.0 版)

一、一句话定位 “3 秒钟记录心情,30 天后看到情绪变化。”

二、目标用户 • 16-35 岁、情绪波动大、愿意自我觉察的人 • 心理咨询/正念练习人群、长期服药需要情绪追踪的人 • iOS & Android 双端首发,支持中文简体/繁体/英文

三、核心功能(MVP)

极速记录(<3 秒) ① 心情 Emoji 5 级滑杆(😞😔😐🙂😁) ② 可选 3-5 标签:社恐/疲惫/开心/灵感/焦��� ③ 最长 140 字文字备注,支持语音>文字转写 ④ 支持 0-1 张照片或 3 秒短视频 情绪仪表盘 • 30 天折线 + 日历热力图 • 高频标签词云 • 时间轴可一键生成分享卡片(隐私打码) 私密与本地优先 • FaceID/指纹/数字密码 3 层加密 • 默认 100% 本地存储(iCloud/ Google Drive 可增量加密同步) • 用户可一键导出 .csv / .json / .pdf 温柔提醒 • 智能:根据用户最近 7 天活跃时段推 2 次弹窗 • 固定:每日 3 个可选时间,可完全关闭 彩蛋正念 • HRV 相机测情绪(iPhone) • 30 秒呼吸动画(可跳过) 四、非核心(2.0 以后) • AI 情绪文字分析 + 建议(本地模型 CoreML / TensorFlow Lite) • 咨询师协同:加密分享指定日记 • 主题商店、小组件、Apple Watch 速记

五、信息架构

Tab1 今日

Emoji 滑杆 → 标签 → 文字/语音 → 完成 Tab2 时间轴 列表 & 日历热力图 Tab3 统计 折线/词云/周期报告 Tab4 我的 隐私/导出/提醒/主题 六、UI 关键交互

• 主色:静谧紫 #7C5DFA(白天)/ 深夜深蓝 #1E1B4B(夜间) • 首页只有一张渐变卡 + 滑杆 + 圆角按钮(“完成”) • 记录完成后 0.8 秒弹出“碎光”动效,提升多巴胺

七、技术选型

• Flutter 3.x(一套代码双端) • 本地数据库:Drift (SQLite) • 加密:SQLCipher + AES-256-GCM(钥匙链存储) • 同步:iCloud CloudKit / Google Drive REST AP

代码解决方案:

心情日记 App PRD 1.0(可直接交付开发)

  1. 修订记录 2024-05-28 V1.0 首版完整 PRD,含 UI/UX 标注、接口定义与埋点方案。

  2. 产品目标 北极星指标:30 日留存 ≥ 35 %
    关键路径:首次打开→完成第 1 条记录→第 7 天仍在记录→第 30 天仍在记录。

  3. 用户故事 3.1 作为情绪波动用户,我想 3 秒内完成记录,以免记录本身带来负担。
    3.2 作为心理咨询来访者,我希望按周/按月导出 CSV,交给咨询师。
    3.3 作为正念练习者,我想用 HRV 相机验证“放松是否真的有效”。

  4. 功能细节
    4.1 极速记录(完成页)

元素规则
Emoji 滑杆默认位于中心;左滑到 😞,右滑到 😁;滑块松手即记录数值 1-5
标签最多 5 个;提供最近 10 次常用标签作为候选;支持自定义 8 字以内
文字备注140 字以内;随输入实时计数;支持语音转写(科大迅飞 SDK)
媒体单张 ≤ 5 MB 照片或 ≤ 5 MB、3 秒短视频;压缩后存本地
完成按钮点击即写库;成功后 0.8 s 碎光动效 & 声音反馈

4.2 情绪仪表盘

模块计算逻辑展示规则
30 日折线当天所有记录的平均 Emoji 值0:00-23:59 视为一天
日历热力图颜色深浅 = 当天平均 Emoji 值支持左右滑切换月份
高频标签词云最近 30 天出现频次 Top 8点击标签跳转列表
分享卡片导出 1080×1350 图片;自动马赛克文字前 20 字支持保存本地/微信/微博

4.3 私密与本地优先

功能技术实现备注
加密SQLCipher (256-bit AES) + 钥匙链随机 256-bit Key卸载 App 后 Key 失效,本地数据永久不可读
备份首次询问用户是否开启;增量上传加密 .db 文件文件名:mood-diary-{uid}-2024-05-28.db.gz
导出CSV 包含:时间、Emoji、标签、文字首 50 字、媒体相对路径JSON 为完整 schema

4.4 温柔提醒

类型触发条件文案示例
智能过去 7 天活跃时段均值 ±30 min“该记录一下此刻的你了~”
固定用户自选的 3 个时间点可关闭或修改

4.5 彩蛋正念

功能规则数据来源
HRV 相机iPhone 前摄 30 s PPG;输出 LF/HF 比值结果仅本地展示,不上传
呼吸动画4-4-4-4 节奏;可提前结束;结束后自动弹窗记录 Emoji动画 Lottie 文件 600 KB
  1. 信息架构 & 页面跳转图 (见附件 Figma:Zepeto|Mood-diary-v1.0.fig)

深度链接 mood://today 直达今日记录页
mood://timeline 到时间轴
mood://stats 到统计页

  1. UI/UX 关键标注 6.1 首页(今日)
    • 顶部渐变卡高度 268 px(iPhone 14 为例)
    • Emoji 滑杆:轨道 4 px 高,滑块 44×44 px
    • 完成按钮:48 px 高,圆角 24 px,主色 #7C5DFA

6.2 夜间模式
• 自动跟随系统;强制切换开关放在“我的”-实验室
• 夜间主色 #1E1B4B,文字 #FFFFFF 87 %

6.3 动效
• 碎光:SVG mask + Lottie;帧率 60 fps;包体 100 KB
• Tab 切换:共享元素过渡(Hero);耗时 200 ms

  1. 技术方案(对接) 7.1 数据模型(Drift)
CREATE TABLE mood_entry (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  emoji_value INTEGER NOT NULL CHECK (emoji_value BETWEEN 1 AND 5),
  tags TEXT, -- JSON ["tag1","tag2"]
  text_note TEXT,
  media_path TEXT,
  created_at INTEGER NOT NULL,
  updated_at INTEGER
);

CREATE TABLE hrv_session (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  lf_hf_ratio REAL,
  session_duration INTEGER,
  created_at INTEGER
);

7.2 接口(本地优先,无服务端,仅同步接口)

端点方法描述
/backup/uploadPOST上传加密 .db.gz 到 CloudKit/Drive
/backup/downloadGET拉取并覆盖本地前弹窗警告

7.3 错误码 E4001 存储空间不足
E4002 加密 Key 丢失(提示用户数据不可恢复)

  1. 埋点事件(Amplitude)
事件属性
record_completeemoji, tag_count, has_media, duration_ms
dashboard_shareshare_channel, card_type
reminder_opentype: smart/fixed
hrv_test_completelf_hf_ratio
  1. 权限 & 合规 • 不收集手机号/邮箱;使用 UUID 作为匿名 uid
    • 隐私政策在首次启动以弹窗形式展示;需勾选同意
    • 中国大陆上架需完成 ICP 备案号展示在“设置-关于”

  2. 里程碑 M1 功能冻结 2024-06-15
    M2 内测(TestFlight + 内测渠道)2024-06-30
    M3 App Store / Google Play 同时上架 2024-07-15

  3. 风险 • iOS 17 隐私清单新增限制:需声明 CoreMotion 用途
    • Android 14 前台服务权限:提醒弹窗需适配

  4. 附件 Figma 文件、切图、Lottie 动效、CSV 导出模版、隐私政策 Markdown。