Files
inchstep/寸进_InchStep_详细需求说明书.md
T
2026-06-25 08:39:47 +08:00

714 lines
29 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 寸进(InchStep)综合成长打卡平台 — 详细需求说明书
> 文档版本:v1.0
> 更新日期:2026-06-17
> 状态:初稿
---
## 目录
1. 文档概述
2. 产品背景与定位
3. 目标用户画像
4. 产品全局说明
5. 功能需求详述
6. 非功能需求
7. 数据模型概要
8. 优先级矩阵
9. 验收标准
10. 商业模式与盈利点
10. 附录
---
## 1. 文档概述
### 1.1 文档目的
本文档旨在将《寸进(InchStep)综合成长打卡平台 简易需求文档》中的要点展开为一份结构化的详细需求说明,作为后续设计、开发、测试的统一参考。
### 1.2 适用范围
本文档覆盖寸进平台 v1.0 版本的全部功能范围,不含企业考勤、公司签到、员工管理、薪资绩效打卡相关功能。
### 1.3 关键词定义
| 术语 | 说明 |
|------|------|
| 打卡项 | 用户创建的单个打卡项目,如"每天背单词""每晚冥想" |
| 打卡记录 | 用户在某个打卡项下某日的一次完成记录 |
| 成长积分 | 平台通用积分,用于激励用户持续打卡 |
| 成就徽章 | 满足特定条件后解锁的虚拟徽章 |
| 打卡小组 | 用户自行创建或加入的多人打卡团体 |
| 动态广场 | 用户分享打卡成果的社交 Feed 流 |
---
## 2. 产品背景与定位
### 2.1 背景
在自我提升与习惯养成领域,现有工具普遍存在几个痛点:
- **功能割裂**:阅读打卡用一个 App,健身打卡用另一个,数据无法互通;
- **缺乏社交激励**:单机打卡容易放弃,缺少同伴监督和竞争氛围;
- **成长不可见**:很多工具只记录"打了没打",缺少有温度的可视化反馈和阶段性总结;
- **仪式感不足**:用户需要"被看见"和"被认可",但现有产品在个人主页展示、成就系统上较弱。
### 2.2 产品定位
**寸进(InchStep)** 是一款面向个人的全场景成长打卡平台,覆盖学习、健康、习惯、兴趣、目标五大领域,融合数据可视化与社交比拼机制,帮助用户发现并量化自己的点滴进步。
### 2.3 产品 slogan
- 中文:**寸进,日日皆有成长**
- 英文:**InchStep, Every inch counts.**
### 2.4 差异化要点
- 全品类覆盖,一个 App 管理所有成长打卡
- 强社交比拼:好友 PK、小组竞赛、排行榜
- 可视化成长闭环:数据图表 + 月度回顾报告
- 存在感设计:个人主页、动态广场、成就徽章
---
## 3. 目标用户画像
### 3.1 核心用户:自我提升爱好者(小 A)
- **年龄**1835 岁
- **特征**:有明确的自律或成长目标,尝试过多种打卡工具,需要一个统一阵地
- **痛点**:用多个工具切换麻烦,缺少外部监督容易放弃
- **使用场景**:每天早起/睡前花 5 分钟完成打卡,周末查看数据趋势
### 3.2 次级用户:社交驱动型用户(小 B)
- **特征**:喜欢和朋友较量,看到排行榜会更有动力
- **痛点**:纯单机工具坚持不下来,想要竞争和观众
- **使用场景**:创建小组拉朋友进来打卡,关注周榜排名
### 3.3 边缘用户:轻度记录者(小 C)
- **特征**:偶尔记录生活点滴,没有严格的坚持目标
- **痛点**:不想被推送压力,需求简单
- **使用场景**:偶尔点进来记录一次,发条动态
---
## 4. 产品全局说明
### 4.1 平台
- **前端三端同步**:Web 端(PC/移动端自适应)、移动端 App(iOS / Android)、微信小程序,三端功能对齐、同步上线
- **技术选型建议**
- Web 端:React / Next.js,响应式布局适配 PC 和移动浏览器
- 移动端 AppReact Native(与 Web 端共享业务逻辑层)
- 微信小程序:原生小程序开发,或 Taro / uni-app 跨端编译
- **后端管理系统**:独立 Web 管理后台,供运营和管理员使用,与用户前端分离部署
### 4.2 设计风格
整体设计语言借鉴 Apple 人机交互指南(HIG),追求**简约、通透、有质感**的视觉体验。
#### 4.2.1 设计哲学
- **内容优先**:减少装饰性元素,让打卡数据和用户内容成为页面主角
- **留白呼吸**:使用充足的空间间距替代分割线来区分内容区块
- **层级清晰**:通过字体大小、粗细、颜色深浅建立清晰的视觉层级,而非靠边框和底色堆砌
- **一致性**:全局统一的圆角半径、间距系统、图标风格和交互范式
- **年轻活力**:色彩明快有活力,融入微渐变和微动效,不沉闷不寡淡,贴合18-35岁用户的审美偏好
#### 4.2.2 色彩系统
| 角色 | 色值 | 用途 |
|------|------|------|
| 品牌主色 | #FF6B35(活力橙) | 核心操作按钮、选中态、品牌标识 |
| 品牌渐变 | #FF6B35 -> #FF4D6D(橙粉渐变) | 品牌背景、引导页、成就特效 |
| 品牌辅色 | #7209B7(亮紫) | 次要强调、徽章稀有度标识、数据图表点缀 |
| 背景色 | #F5F5F7(浅灰) | 页面背景,类似iOS设置页质感 |
| 卡片色 | #FFFFFF | 卡片、表单、弹窗背景 |
| 主文字 | #1D1D1F | 标题、正文关键信息 |
| 次要文字 | #86868B | 辅助说明、时间戳、占位符 |
| 分割线 | #E5E5EA | 极细分割线,1px或0.5pt |
| 成功 | #34C759(iOS绿) | 打卡完成、成就达成 |
| 警示 | #FF9500(iOS橙) | 断签提醒、待打卡 |
| 错误 | #FF3B30iOS红) | 删除、错误提示 |
| 图表色板 | #FF6B35 #4CC9F0 #7209B7 #06D6A0 #F72585 | 数据可视化图表配色,明快可区分 |
> 年轻化不等于花哨。品牌主色+品牌渐变+亮紫点缀+图表色板,四层体系足够丰富但不杂乱。
#### 4.2.3 字体排版
- **中文字体**PingFang SC(苹方),系统原生字体,无须额外加载
- **西文字体**SF Pro,Apple系统字体,与iOS系统文字一致
- **字号层级**
- 大标题:34pt / Bold
- 页面标题:28pt / Semibold
- 卡片标题:17pt / Semibold
- 正文:15pt / Regular
- 辅助文字:13pt / Regular
- 角标/标签:11pt / Medium
- **行高**:正文行高1.4倍,标题行高1.2倍
#### 4.2.4 间距与栅格
- **基准间距**:8pt,所有间距以此倍数递增(8、16、24、32、40、64
- **安全边距**:左右各16pt(iOS标准),顶部44pt(避开状态栏)
- **卡片圆角**:12pt(统一圆角,与iOS系统卡片保持一致)
- **图标尺寸**24pt x 24pt(导航栏)、28pt x 28pt(打卡项图标)
- **按钮高度**48pt(主要CTA按钮),38pt(次要按钮)
#### 4.2.5 图标与动效
- **图标风格**SF Symbols风格线性图标,2pt描边,圆角端点;辅以少量面性图标用于高亮态
- **动效原则**
- 打卡成功:微缩放+淡入+品牌色绽放粒子动效(0.4s spring),伴随Haptic Feedback
- 页面切换:iOS原生导航推入动画(左侧滑入)
- 弹窗出现:从底部上滑(Action Sheet风格)或居中淡入(Alert风格)
- 数据图表:加载时序列动画,数据点逐一出现(0.3s stagger
- 排行榜:用户排名变化时数字滚动动画
- 成就解锁:全屏庆祝动效(Lightshow风格),配合触感反馈
- **禁用动效**:尊重系统减少动态效果无障碍设置
#### 4.2.6 组件视觉规范
| 组件 | 外观说明 |
|------|----------|
| 导航栏 | 半透明毛玻璃效果(Blur),标题居左或居中,与iOS系统导航栏一致 |
| 选项卡 | 底部Tab BarSF Symbols图标+文字,选中态品牌色渐变填充 |
| 打卡按钮 | 圆形按钮,直径48pt,品牌渐变填充,打卡后变为勾选态,带微动效 |
| 日历视图 | 圆角网格,打卡日显示品牌色圆点,连续打卡显示火焰图标,补卡日特殊标记 |
| 卡片 | 白色背景、12pt圆角、极轻微阴影 |
| 列表 | 圆角分组列表(Inset Grouped样式),与iOS设置页风格一致 |
| 排行列表 | 前三名以金银铜色突出显示,数据条带品牌渐变进度条 |
| 成就徽章 | 稀有度视觉:铜#CD7F32/银#C0C0C0/金#FFD700,金质徽章带流光动效 |
#### 4.2.7 深色模式(Dark Mode
- 跟随系统设置自动切换,也支持App内手动切换
- 深色配色方案:
- 背景色:#000000(纯黑)或#1C1C1EiOS系统灰)
- 卡片色:#2C2C2E
- 主文字:#FFFFFF
- 次要文字:#8E8E93
- 分割线:#38383A
- 品牌色和品牌渐变在深色模式下饱和度适当降低,避免刺眼
- 深色模式下毛玻璃效果透明度调整,确保文字可读性
#### 4.2.8 设计参考
- **直接参考**:iOS系统自带App(健康、健身、日历)、Apple设计模板
- **年轻化参考**Notion、GoodNotes、Lose It、Strava——简约但色彩有记忆点
- **风格对标**:简约、不堆叠、不花哨,一屏只做好一件事,但色彩敢于表达
- **不采纳风格**:拟物化、大面积渐变盖满全屏、卡片套卡片、暗黑背景加高饱和渐变
### 4.3 语言
- 中文简体(首发),后续支持繁体中文和英文
---
## 5. 功能需求详述
### 5.1 用户模块
#### 5.1.1 注册与登录
- **手机号注册**:短信验证码登录/注册
- **第三方登录**:微信、Apple ID
- **自动登录**:Token 持久化,7 天内免密
- **注销账号**:提供账户注销入口,含确认流程
#### 5.1.2 个人主页
| 功能 | 说明 |
|------|------|
| 头像 | 支持自定义上传或默认头像 |
| 个性签名 | 最多 50 字 |
| 个人目标简介 | 一句话介绍正在坚持的事,最多 100 字 |
| 展示数据 | 累计打卡天数、连续打卡天数、获得徽章数、总积分 |
| 隐私开关 | 可控制主页是否对非好友可见 |
#### 5.1.3 成长档案
- **累计打卡记录**:按时间线展示所有打卡项的历史记录
- **连续天数**:各打卡项各自的连续天数,以及全局最高连续天数
- **成就徽章墙**:已获得的徽章以网格展示,未获得的显示为锁定占位
---
### 5.2 打卡核心模块
#### 5.2.1 打卡项管理
**创建打卡项**
| 字段 | 说明 | 必填 |
|------|------|------|
| 名称 | 打卡项名称,如"每天背单词" | 是 |
| 图标 | 从系统图标库选择,或自定义 emoji | 是 |
| 分类 | 学习/健康/习惯/兴趣/目标 | 是 |
| 每日目标 | 文字描述,如"背 50 个单词" | 否 |
| 提醒时间 | 每日定时推送,支持多时段 | 否 |
| 打卡周期 | 每日/每周(可指定周几)/隔日/自定义间隔 | 是 |
| 隐私设置 | 公开/仅好友可见/仅自己可见 | 是 |
| 目标期限 | 选填,如"2026-09-01 前通过考试" | 否 |
**打卡项操作**:编辑、暂停(冻结)、归档、删除(软删除,保留历史数据)
#### 5.2.2 每日打卡
**一键打卡流程**
1. 首页展示今日待打卡项列表
2. 点击打卡项旁的打卡按钮 → 完成打卡
3. 打卡成功后:
- 按钮状态变为"已打卡",显示打卡时间
- 弹出轻提示,可选添加文字/图片/视频备注
- 获得成长积分 +1
4. 支持批量打卡(连续点按多个项)
**打卡备注**
- 支持纯文字(最多 500 字)
- 支持上传图片(最多 9 张)
- 支持上传短视频(≤30 秒)
- 备注可在打卡详情页查看和编辑
#### 5.2.3 补卡与断签提醒
**补卡**
- 允许补签最近 7 天的缺失记录
- 每月免费补卡 3 次,超出可消耗成长积分兑换(5 积分/次)
- 补卡后该日记录标注"已补卡"
**断签提醒**
- 当某个打卡项即将断签(当日 20:00 仍未打卡),推送提醒
- 连续提醒间隔:20:00、21:00、22:00(用户可关闭)
- 断签后,该打卡项的连续天数归零
#### 5.2.4 定时推送打卡提醒
- 按用户设定的提醒时间推送系统通知
- 通知内容示例:"📚 该背单词啦,今天还没打卡哦"
- 用户可在设置中统一关闭推送
---
### 5.3 数据可视化模块
#### 5.3.1 日历打卡视图
- 按月切换,每个打卡项对应一个日历
- 打卡日显示为实心圆点(颜色对应分类色)
- 点击某日可查看当天的打卡详情
- 支持日历分项筛选(只看学习/只看健康等)
#### 5.3.2 统计总览
| 指标 | 展示范围 | 展示形式 |
|------|----------|----------|
| 连续打卡天数 | 全局 / 单项 | 大数字 + 火焰图标 |
| 本月完成率 | 单项 | 环形进度条 |
| 年度完成率 | 全局 | 进度条 |
| 累计完成次数 | 单项 | 数字 + 同比上月变化 |
| 完成趋势 | 近 7 天 / 30 天 | 折线图 |
| 坚持时长 | 单项 | 从首次打卡至今的天数 |
#### 5.3.3 数据导出
- 支持导出个人打卡数据为 CSV/Excel
- 导出内容:打卡项、打卡日期、备注、连续天数
---
### 5.4 社交与比拼模块
#### 5.4.1 好友系统
- **添加好友**:搜索用户名/手机号、扫二维码、通讯录匹配
- **好友列表**:按最近互动排序
- **好友主页**:可查看好友公开的成长档案和动态
#### 5.4.2 动态广场
- 用户打卡时可选择"同步到动态广场"
- 动态内容:打卡项名称 + 备注文字/图片/视频
- 互动:点赞、评论(支持回复评论)
- 动态排序:默认按时间倒序,支持切换为"热门"
- 动态列表支持按分类筛选
#### 5.4.3 排行榜
| 排行类型 | 更新频率 | 范围 | 排名依据 |
|----------|----------|------|----------|
| 周榜 | 每周一 00:00 更新 | 好友 / 全平台 | 本周打卡完成率 |
| 月榜 | 每月 1 日 00:00 更新 | 好友 / 全平台 | 本月完成率 + 连续天数加权 |
| 小组榜 | 实时 | 小组内 | 个人对小组目标的贡献度 |
**展示**:Top 10 显示排名头像和昵称,其他显示所在百分位
#### 5.4.4 打卡小组
**创建小组**
| 字段 | 说明 | 必填 |
|------|------|------|
| 小组名称 | 原名称,最多 20 字 | 是 |
| 小组封面 | 自定义图片 | 是 |
| 小组简介 | 最多 200 字 | 是 |
| 小组类型 | 公开(任何人可加入)/ 私密(需审核) | 是 |
| 共同目标 | 可设定一个或多个打卡项作为小组目标 | 否 |
| 人数上限 | 默认 50 人,可扩容 | 否 |
**小组功能**
- 成员管理:申请审核、移出、退出
- 小组打卡看板:展示每个成员今日打卡进度
- 小组 PK:两个小组可发起为期 7 天的打卡完成率对战
- 小组动态:小组成员动态聚合为一个独立 tab
#### 5.4.5 好友对战
- **发起**:选择好友 → 选择一个或多个打卡项 → 设定对战时长(7/14/30 天)
- **对战规则**:比拼指定项在周期内的打卡完成率
- **实时展示**:双方进度条对比,每日更新
- **结果**:周期结束后自动出结果,全平台推送
---
### 5.5 激励体系
#### 5.5.1 成就徽章
| 徽章名称 | 解锁条件 |
|----------|----------|
| 初露锋芒 | 完成第 1 次打卡 |
| 七日坚持 | 任意打卡项连续 7 天 |
| 半月之约 | 任意打卡项连续 15 天 |
| 月满则盈 | 任意打卡项连续 30 天 |
| 百日筑基 | 任意打卡项连续 100 天 |
| 全面开花 | 同时有 5 个打卡项保持活跃 |
| 社交达人 | 获得 50 个点赞 |
| 小组之星 | 在小组内连续打卡满 30 天 |
| 神补刀 | 使用补卡功能 10 次 |
| 年度坚持王 | 全年打卡完成率 ≥ 80% |
- 徽章解锁时发送系统通知
- 徽章有稀有度标识(铜/银/金)
#### 5.5.2 成长积分
**获取途径**
| 行为 | 积分 |
|------|------|
| 每日打卡一次 | +1 |
| 连续打卡第 7 天 | +5(额外) |
| 连续打卡第 30 天 | +20(额外) |
| 完成一项打卡目标 | +10 |
| 分享动态 | +2(每日上限 3 次) |
| 评论他人动态 | +1(每日上限 5 次) |
| 邀请新用户注册 | +15(每月上限 5 人) |
**消耗途径**
- 补卡:5 积分/次
- 兑换徽章装饰特效
- 兑换个性化主题皮肤(规划中)
#### 5.5.3 阶段总结报告
- **月度成长报告**:每月 1 日自动生成
- 本月打卡完成率对比上月
- 本月最佳坚持项
- 本月获得徽章
- 本月积分增减
- 一句话激励文案
- **季度/年度报告**:内容更丰富,含趋势图和社交维度数据
---
### 5.6 辅助工具模块
#### 5.6.1 待办清单与打卡联动
- 用户可创建简单的每日待办清单
- 待办项与打卡项绑定:完成待办后自动完成对应打卡
- 示例:待办"背 30 个单词"→ 绑定"背单词"打卡项,勾选待办即打卡
#### 5.6.2 打卡周期自定义
- 每日:最基础,每天检查
- 每周:指定周几打卡(如周一、三、五)
- 隔日:打卡一天休息一天
- 自定义:按 N 天为周期(如每 3 天打卡一次)
#### 5.6.3 隐私设置体系
| 隐私层级 | 适用范围 | 说明 |
|----------|----------|------|
| 公开 | 打卡项 / 主页 / 动态 | 所有人可见 |
| 仅好友可见 | 同上 | 仅双向好友可见 |
| 仅自己可见 | 同上 | 完全私密 |
| 隐藏动态 | 单条动态 | 发布后从广场移除但数据保留 |
- 隐私设置支持批量修改
- 创建打卡项时默认隐私为"仅自己可见"
---
### 5.7 消息与通知
| 通知类型 | 触发条件 | 推送方式 |
|----------|----------|----------|
| 打卡提醒 | 用户设定的提醒时间 | 通知栏 |
| 断签预警 | 当日 20:00 未打卡 | 通知栏 |
| 点赞/评论 | 他人互动 | 通知中心 |
| 好友请求 | 收到好友申请 | 通知栏 + 通知中心 |
| 成就解锁 | 获得徽章 | 弹窗 |
| 对战邀请 | 好友发起对战 | 通知栏 |
| 排行榜刷新 | 周榜/月榜更新 | 通知中心 |
---
## 6. 非功能需求
### 6.1 性能要求
- 首页加载:冷启动 ≤ 2 秒,热启动 ≤ 1 秒
- 打卡操作:点击到反馈 ≤ 500ms
- 动态广场加载:首屏 ≤ 1.5 秒,滑动加载新内容 ≤ 1 秒
- 日历视图切换:≤ 800ms
- 排行榜数据:≤ 2 秒
### 6.2 并发与规模
- 支撑初期 1 万 DAU,日打卡记录 50 万条
- 动态广场 Feed 支持 1000 QPS
### 6.3 数据安全
- 用户密码加密存储(bcrypt 或等同强度)
- 隐私数据(个人主页、私密打卡项)严格控制服务端查询权限
- 图片/视频上传需做安全审核(后续接入自动审核服务)
- 数据备份:每日全量备份,每 6 小时增量备份
### 6.4 兼容性
- iOS 14+Android 8+
- 微信小程序基础库 2.20+
- **Web 端**Chrome 90+、Safari 15+、Edge 90+,响应式布局适配 375px-1920px 视口
- **管理后台**Chrome 90+、Edge 90+(优先 Chromium 内核),最低分辨率 1280x720
### 6.5 其他
- 支持离线打卡:断网时本地缓存打卡记录,联网后同步
- 推送到达率 ≥ 95%(接入厂商通道)
---
## 7. 数据模型概要
### 7.1 核心实体关系
```
User (用户)
├── CheckInItem (打卡项) → CheckInRecord (打卡记录)
├── Achievement (成就徽章) → UserAchievement (用户已获得)
├── PointsLog (积分流水)
├── Friend (好友关系) → 双向关联
├── Post (动态) → Comment / Like
├── Group (打卡小组) → GroupMember
├── Battle (好友对战) → BattleParticipant
└── Report (成长报告)
```
### 7.2 主要字段概要
**User**
- id, phone, nickname, avatar, bio, motto, privacy_level, total_days, max_streak, points, created_at
**CheckInItem**
- id, user_id, name, icon, category, daily_goal, cycle_type, cycle_config, remind_time, privacy_level, status (active/paused/archived), deadline, target_goal, created_at
**CheckInRecord**
- id, item_id, user_id, check_date, status (normal/makeup), note_type (text/image/video), note_content, created_at
**Achievement**
- id, name, description, icon, rarity (bronze/silver/gold), condition_type, condition_value
**Group**
- id, name, cover, intro, type (public/private), max_members, target_items, created_by, created_at
**Battle**
- id, creator_id, opponent_id, item_ids, start_date, end_date, status (pending/active/completed), winner_id
**Post**
- id, user_id, item_id, content_type, content, images, video_url, privacy, likes_count, comments_count, created_at
---
## 8. 优先级矩阵
### 8.1 分级标准
- **P0**:核心功能,无此功能产品无法交付
- **P1**:重要功能,支撑产品核心体验
- **P2**:增强功能,提升体验但非必须
- **P3**:远期规划,v1.0 之后考虑
### 8.2 功能优先级
| 模块 | 功能 | 优先级 | 说明 |
|------|------|--------|------|
| 用户 | 注册登录 | P0 | 基础入口 |
| 用户 | 个人主页与成长档案 | P1 | 存在感核心 |
| 打卡 | 创建打卡项 | P0 | 产品基石 |
| 打卡 | 每日打卡操作 | P0 | 产品基石 |
| 打卡 | 打卡备注(文字/图文) | P1 | 完整体验 |
| 打卡 | 打卡备注(视频) | P2 | 后续完善 |
| 打卡 | 定时推送提醒 | P1 | 留存关键 |
| 打卡 | 补卡功能 | P1 | 容错机制 |
| 打卡 | 断签提醒 | P1 | 防流失 |
| 打卡 | 多周期支持 | P1 | 灵活性 |
| 可视化 | 日历打卡视图 | P0 | 核心体验 |
| 可视化 | 统计总览与图表 | P1 | 体现进步 |
| 可视化 | 数据导出 | P2 | 增强 |
| 社交 | 好友系统 | P1 | 社交基础 |
| 社交 | 动态广场 | P1 | 社交核心 |
| 社交 | 排行榜 | P1 | 竞争驱动 |
| 社交 | 打卡小组 | P2 | 深度社交 |
| 社交 | 好友对战 | P2 | 深度社交 |
| 激励 | 成就徽章 | P1 | 持续动力 |
| 激励 | 成长积分 | P1 | 持续动力 |
| 激励 | 月度/年度报告 | P1 | 阶段性闭环 |
| 辅助 | 待办清单绑定 | P2 | 效率增强 |
| 辅助 | 隐私设置 | P1 | 安全感 |
| 辅助 | 离线打卡 | P2 | 体验优化 |
---
## 9. 验收标准
10. 商业模式与盈利点
### 11.1 用户管理
- [x] 用户可成功注册并登录,Token 有效期内无需重复登录
- [x] 个人主页正确展示用户信息和打卡统计数据
- [x] 隐私设置生效:仅自己可见的内容在广场和非好友主页不展示
### 11.2 打卡功能
- [x] 用户可完整创建→查看→编辑→暂停→归档→删除一个打卡项
- [x] 每日打卡完成时积分 +1,连续天数更新
- [x] 补卡不突破连续天数且记录标注"已补卡"
- [x] 推送提醒在设定时间准时发送
- [x] 不同打卡周期(每日/每周/隔日)正确计算待打卡日
### 11.3 数据可视化
- [x] 日历视图准确标记打卡日与缺失日
- [x] 月度/年度完成率百分比计算正确
- [x] 折线图趋势数据与打卡记录一致
### 10.4 社交
- [x] 好友添加流程完整,双向好友关系正确
- [x] 动态广场发布→展示→互动(点赞评论)功能正常
- [x] 排行榜数据按规则正确排序
- [x] 小组创建→加入→打卡→查看成员进度功能正常
- [x] 对战发起→进行→结算流程完整
### 10.5 激励体系
- [x] 所有徽章解锁条件可达成,解锁时正确通知
- [x] 积分获取和消耗记录准确
- [x] 月度报告数据与打卡记录一致
---
## 10. 商业模式与盈利点
### 11.1 总体策略
寸进的核心商业逻辑是 **Freemium + 虚拟增值 + 社交激励付费**。基础打卡功能完全免费,以保证用户增长和留存;盈利点集中在虚荣心、效率提升、深度社交三个方向上,不靠广告骚扰破坏产品调性。
### 11.2 会员订阅(寸进 Pro
| 层级 | 价格参考 | 核心权益 |
|------|----------|----------|
| 免费版 | ¥0 | 创建 ≤ 5 个打卡项、基础统计、每日提醒、标准徽章 |
| Pro 月卡 | ¥12/月 | 无限打卡项、高级图表(趋势对比/多维度交叉分析)、无限补卡、自定义主题皮肤 |
| Pro 季卡 | ¥30/季 | 月卡全部权益 + 月度报告 PDF 导出、专属徽章边框特效 |
| Pro 年卡 | ¥88/年 | 季卡全部权益 + 年度深度报告、早鸟体验新功能、会员专属标识 |
**定价参考依据**:对标同类习惯类 App(小日常年卡 ¥68–¥98,潮汐年卡 ¥108),寸进 Pro 年卡 ¥88 定位中等偏低,降低付费门槛。
### 11.3 虚拟商品商城
#### 9.3.1 个性装扮
| 商品类型 | 定价 | 说明 |
|----------|------|------|
| 打卡项主题图标包 | ¥6/包 | 解锁一套精美手绘图标,如"国风""简约""手账风" |
| 个人主页皮肤 | ¥12/套 | VIP 定制主页背景,含动效 |
| 徽章装饰框 | ¥3/个 | 为已获得的徽章添加金框、流光特效等 |
| 动态卡片模板 | ¥6/包 | 打卡分享到广场时使用精美排版模板 |
#### 9.3.2 成长积分兑换(积分也可直接购买)
| 商品 | 积分价格 | 备注 |
|------|----------|------|
| 额外补卡次数(1 次) | 5 积分 | 月免费额度用完后消耗 |
| 补卡月卡(无限补卡) | 200 积分 | 性价比选择 |
| 限定徽章 | 500 积分 | 特殊设计,非 Pro 也可通过活跃获得 |
| 皮肤体验卡(7 天) | 100 积分 | 限时体验 |
### 10.4 小组/战队增值服务
| 功能 | 免费版限制 | Pro/付费解锁 |
|------|------------|--------------|
| 创建小组数量 | 最多 1 个 | Pro 无限 |
| 小组人数上限 | 50 人 | Pro 可扩容至 200 人(¥6/次扩容) |
| 小组数据分析 | 基础统计 | 小组内成员排名趋势、完成率热力图 |
| 同时发起对战数量 | 1 场 | Pro 最多同时 5 场 |
### 10.5 深度数据报告
免费用户可查看月度报告的简版预览。完整版(含相比上月的变化分析、下月建议、PDF/图片一键分享)需 Pro 订阅或单次付费 ¥3。
### 10.6 广告(克制模式)
寸进在 MVP 阶段不做广告。进入增长期后考虑在以下位置放置原生广告,不破坏体验:
| 广告位 | 形式 | 定价参考(CPM) | 说明 |
|--------|------|-----------------|------|
| 动态广场信息流(每 10 条插 1 条) | 图片/视频卡片 | ¥15–¥25 | 仅限教育/图书/运动类品牌,风格与动态卡片一致 |
| 打卡完成弹窗底部 | 小横幅 | ¥8–¥15 | 打卡成功后展示,非侵入式 |
| 排行榜赞助商冠名 | 品牌露出 | ¥3,000–¥8,000/月 | "本周榜由 XXX 冠名" |
**可选策略**:提供"去广告永久包"¥18,付费后永不看到广告,兼顾体验敏感用户的诉求。
### 10.7 知识付费 / 内容导流
#### 9.7.1 打卡挑战营
- 平台联合 KOL 发起付费打卡营(如"21 天阅读挑战"¥9.9
- 用户付费报名,完成打卡退还报名费(或瓜分未完成者的报名费)
- 寸进抽成 20%
#### 9.7.2 精选推荐
- 根据用户打卡品类,推荐关联书籍、课程、工具
- 按 CPS(按成交付费)结算,导流至合作方
### 10.8 实体衍生品(品牌周边)
| 商品 | 定价 | 说明 |
|------|------|------|
| 寸进年度打卡手账本 | ¥49 | 实体纸版配合 App 使用,含 365 天打卡内页 |
| "Every inch counts." 帆布包 / 贴纸 | ¥39 / ¥9.9 | 品牌周边 |
| 月度打卡海报(可打印 PDF) | ¥6 | 设计精美的月度打卡追踪 PDF |
### 10.9 收入预估模型
假设 DAU 10,000MAU 约 40,000
| 收入来源 | 付费转化率 | 客单价(月均) | 月收入估算 |
|----------|------------|----------------|------------|
| Pro 订阅 | 5% 付费率 | ¥7.3(年卡均摊) | ¥14,600 |
| 虚拟商品 | 3% 月活购买 | ¥6 | ¥7,200 |
| 小组增值 | 0.5% 月活 | ¥8 | ¥1,600 |
| 广告收入 | — | — | ¥2,000–¥5,000 |
| 挑战营抽成 | 2% 月活参与 | ¥2(抽成后) | ¥1,600 |
| 实体周边 | 1% 月活购买(季度) | ¥25(均摊月) | ¥3,333 |
| **合计** | | | **¥30,333–¥33,333/月** |
> 以上为保守估算。随着用户规模增长,订阅和广告收入有明显边际效应;当 DAU 达到 50,000–100,000 时,月收入预计可达 ¥15–30 万。
### 10.10 商业化原则
| 原则 | 说明 |
|------|------|
| 基础打卡永远免费 | 打卡这个最核心的行为不能收费,否则用户流失 |
| 付费不能让用户变强 | 只能买皮肤、买便利、买深度数据,不能用钱买连续天数或排行榜排名 |
| 尊重隐私 | 付费功能不涉及查看他人隐私数据 |
| 先价值后付费 | 用户先充分体验产品价值,再被自然引导到付费点,不做强制付费门 |
---
## 11. 附录
### 11.1 参考竞品
- 小日常(习惯打卡类)— UI 参考
- 番茄 ToDo(待办+专注)— 提醒机制参考
- Grow(成长社区)— 社区氛围参考
- Forest / 专注森林 — 社交比拼参考
### 11.2 风险与应对
| 风险 | 影响 | 应对方案 |
|------|------|----------|
| 用户社交活跃度低 | 社交模块形同虚设 | 初始种子用户运营,排行榜推送激励 |
| 用户离线打卡导致数据冲突 | 数据不一致 | 以客户端时间 + 服务端校验,冲突时保留多条 |
| 打卡项过多用户疲劳 | 流失 | 引导聚焦 3–5 个核心打卡项,减少推送频次 |
| 隐私数据泄露 | 法律风险 | 最小权限原则 + 隐私数据加密 + 审计日志 |
### 11.3 版本规划建议
| 版本 | 目标 | 核心交付 |
|------|------|----------|
| v1.0 MVP | 三端同步上线 | 注册登录、打卡 CRUD、日历视图、推送提醒、基础统计(Web + App + 小程序 + 管理后台) |
| v1.1 | 社交启动 | 好友系统、动态广场、排行榜 |
| v1.2 | 深度社交 | 打卡小组、好友对战 |
| v1.3 | 激励闭环 | 成就徽章、积分体系、月度报告 |
| v2.0+ | 体验增强 | 待办联动、离线打卡、数据导出、视频备注、主题换肤 |