← 返回导航

产品设计

v1.0 · 2026-08-07

版本:v1.3(2026-08-16)
依据:PRD v0.9(品牌内核·时光容器)+ 原型 v4.5 + 想法库 I-001(2026-08-07 决策已拍板)+ 坚持封存定案(2026-08-08 用户拍板)+ 迭代二(媒体记录/自定义里程碑,2026-08-11 用户拍板)+ 迭代 A「一念」(2026-08-14 用户拍板)
本文档是概念与信息架构的唯一设计源;需求细节以 PRD 为准,交互细节以原型为准。

0. 设计原点

时光容器:念时承接一个人甚至一群人不同阶段的回忆与期待。

产品的全部工作 = 记录(输入)+ 呈现(输出)

三条设计原则(贯穿所有决策):

  1. 类型简单,状态表达生命——只有期待/坚持两种类型;生命周期(一念→筹备→珍藏)用状态流转表达,不重构类型
  2. 记录有仪式感,呈现可回望——不做冰冷的效率工具;一切记录最终服务于回望
  3. 一群人是共享,不是社交——多人协作是共同维护一段时光(共享、实时同步),不做点赞/评论等社交功能

1. 概念模型

1.1 核心实体

实体定义记录侧呈现侧
项目一段时光的容器;类型 = 期待 / 坚持创建时定义名称/日期/图标卡片、宫格、详情页
期待奔赴未来的事件(有目标日期):爬山、见面、考试待办(筹备)+ 这一刻(进行)倒计时大数字、期待宫格
坚持持续滚动的日常(无终点):跑步、练字、宝宝成长这一刻滚动天数、焦点卡、纪念章
记录(这一刻)项目下的时间线条目文字(二期:图片/视频)详情页时间线
待办期待筹备期的准备事项(新)添加/勾选详情页待办区,事后沉淀进珍藏
纪念章坚持的勋章(满 30/100/365 天自动)自动计算纪念章墙、详情页状态条
珍藏期待完成 / 坚持封存后的终态(状态流转)完成/封存时保留全部记录珍藏分区、只读分享页
伙伴共同守护项目的成员邀请/加入伙伴页、详情页伙伴区
分享珍藏的只读呈现(新)生成分享链接H5 只读时间线页

1.2 状态流转(时光生命线)

一念 ──邀约/表态/建议/附议──▶ 敲定转正 ──▶ 期待(倒计时+待办)──完成──▶ 手动转珍藏
                                       └──▶ 坚持(滚动计时+记录)──封存──▶ 珍藏(纪念章+回望+分享)
期待 ──筹备(倒计时+待办)──▶ 完成 ──手动转为珍藏──▶ 珍藏(回望+分享)
坚持 ──滚动计时+记录──▶ 持续 ──手动封存──▶ 珍藏(纪念章+回望+分享)

1.3 关键语义裁决(沿用 PRD 2.4 + 新增)

概念定案
重复提醒= 提醒推送频率(非统计口径),期待/坚持都有,MVP 仅存储展示
坚持计时自动滚动;打卡=发记录,不参与连续天数;"连续打卡 N 天"二期
期待「已相伴」不做
珍藏 = 状态流转期待完成 / 坚持封存 → 手动转为珍藏(本次设计新增,替代"仅归档")
坚持封存坚持可手动封存进珍藏:随时可封存+二次确认;封存即结业、天数冻结、MVP 不可逆(二期重新开启);纪念章随封存收录(2026-08-08 定案)
待办 = 筹备期记录挂期待项目下,勾选完成,事后沉淀进珍藏页(本次设计新增)
分享 = 只读呈现生成链接,任何人打开 H5 看到这段记忆;引用(纳入自己空间)二期
「我们」= 聚合视图不新增关系实体;首页置顶卡聚合我参与的共享项目
一群人 = 共享非社交无点赞/评论/关注(一念讨论机制见原则③待拍板注)
一念(status=0)还没定日子的念头:邀约→表态→建议+附议→留言→敲定转正;全程留痕,封存后为回忆资料(2026-08-14 迭代 A)

2. 信息架构

2.1 导航(四页签,不变)

念时(首页)|纪念章|伙伴|我的

2.2 页面蓝图(原型 v4.4 基础上增量)

页面现状本次设计增量
首页题记→置顶卡→期待宫格→坚持→FAB珍藏分区(期待珍藏卡:名称+完成日期+记录数;坚持封存卡:名称+封存日期+坚持天数)
创建页期待/坚持切换 + 重复提醒(已对齐)不变
详情页(期待·筹备中)大数字卡+伙伴区+时间线+打卡条待办区(添加/勾选,筹备期)
详情页(期待·可珍藏)同上「转为珍藏」入口(目标日期过后或手动,二次确认)
详情页(坚持·可封存)大数字卡+纪念章条+伙伴区+时间线「封存纪念」入口(二次确认,封存后入珍藏、天数冻结)
详情页(珍藏态)珍藏头卡(完成/封存日期+记录数+纪念章)、完整时间线、「生成分享」(期待/坚持通用)
分享页(新,只读)H5 独立页:项目名+大数字+时间线+伙伴,无需登录,带品牌题记
我的页用户+统计+设置珍藏计数已有,不变
纪念章/伙伴v4.3 已定不变

2.3 关键交互


3. 数据模型影响

3.1 现有表(12 张,详见 database.md / init.sql)

user / project / project_member / project_record / invite / sms_code / todo / share / wish_participant(一念参与档案)/ wish_suggestion(一念建议)/ wish_suggestion_support(附议)/ wish_suggestion_comment(留言)

3.2 project 表语义补充

3.3 新增:todo 表(筹备期待办)

字段类型说明
idBIGSERIAL PK
project_idBIGINT FK所属期待项目
contentVARCHAR(100)事项内容
doneBOOLEAN是否完成
done_atTIMESTAMP完成时间(留痕)
done_byBIGINT完成人(留痕)
created_byBIGINT创建人
created_atTIMESTAMP
sortINT排序

3.4 新增:share 表(只读分享)

字段类型说明
idBIGSERIAL PK
project_idBIGINT FK被分享的珍藏项目
tokenVARCHAR(32)分享令牌(UUID 去横线)
created_byBIGINT分享人
created_atTIMESTAMP
expires_atTIMESTAMP NULL过期时间(NULL=永久)
revokedBOOLEAN是否已作废

3.5 新增 API

接口说明
POST /projects/{id}/todos添加待办
GET /projects/{id}/todos待办列表
PUT /todos/{id}勾选/取消完成(含 done_by/done_at)
PUT /projects/{id}/status已有接口,转珍藏/封存复用(1→2;重复转返回 4105;仅支持转 2)
POST /projects/{id}/share生成只读分享链接
DELETE /projects/{id}/share作废分享
GET /share/{token}只读内容(无需登录,限珍藏项目)

4. 分期路线

一期(当前主线:H5 迭代 → 鸿蒙同步带上)

  1. 待办:todo 表 + API + 详情页待办区(H5 + 鸿蒙)
  2. 转珍藏 / 封存:期待转珍藏 + 坚持封存入口 + 二次确认 + 首页珍藏分区(两种卡片)+ 天数冻结
  3. 只读分享页:share 表 + API + H5 分享页(文字时间线版,期待/坚持通用)
  4. 媒体记录:图片上传 + 详情/分享时间线图文混排 + 大图预览(H5 已完成,2026-08-11;分享页媒体版同步上线;MVP 单图/条,纯图记录可 content 留空)
  5. 自定义纪念章里程碑:名称+天数,每项目 ≤5 个,达天数自动颁发(H5 已完成,2026-08-11)
  6. 一念生命周期(迭代 A):status=0 + 参与档案/建议/附议/留言四表 + 邀约表态敲定全链路(H5 已完成,2026-08-15;小程序待同步)

二期

  1. 引用:把他人珍藏引用到自己的空间(需评估数据模型)
  2. 结构化数值(身高体重等生长曲线)
  3. 连续打卡统计(坚持口径的进阶)

明确不做


5. 设计验证(回应"记录/呈现"双职责)

职责一期落地二期落地
记录待办(筹备期准备)、这一刻(文字)、图片(2026-08-11 迭代二,单图/条)视频、结构化数值
呈现倒计时(奔赴)、时间线(回望,图文混排)、珍藏分区(沉淀)、分享页(延续,媒体版)、自定义里程碑(纪念章页)引用(跨空间延续)、生长曲线

闭环自检:爬山例子走一遍——创建期待(倒计时)→ 添加待办(买装备)→ 当天记录这一刻(交流/心情)→ 完成后手动转为珍藏 → 生成分享链接给没参与的朋友看。全链路覆盖,无断裂。坚持例子——创建坚持(每日晨跑)→ 记录这一刻 → 手动封存 → 天数冻结、纪念章收录 → 生成分享。全链路覆盖,无断裂。