MomMate 是一款面向 0-2 岁宝宝照护场景的 iOS 记录应用,当前以“低操作成本记录 + 基础趋势统计”为核心。
- 一键开始/结束睡眠记录。
- 支持“选择其他时间”补录开始或结束时间(包含跨天场景)。
- 首页展示今日睡眠总时长、次数、与昨日对比。
- 历史记录支持查看、编辑、删除。
- 新增饮食记录:餐次、食材、食量、备注、时间。
- 饮食列表支持按餐次筛选与滑动删除。
- 今日饮食摘要展示当日记录次数与类型概览。
- 食物清单支持新增、删除、拖拽排序,并对同名食材去重(忽略大小写与前后空格)。
- 兼容旧版
savedFoodList数据迁移到新食物清单。
- 支持快捷添加常见里程碑(翻身、坐稳、爬行、站立、说话、微笑)。
- 支持自定义新增里程碑(标题、分类、日期、备注)。
- 时间线支持按分类筛选、编辑、删除。
- 支持睡眠/饮食两种统计模式切换。
- 支持周、月、年三个统计周期并可前后翻页。
- 睡眠统计:总睡眠时长、日均睡眠次数、日均睡眠时长趋势图。
- 饮食统计:总进食次数、日均进食次数、主要进食类型、趋势图、类型分布环图。
- 睡眠总睡眠时长:所选周期内已完成睡眠记录(
wakeTime != nil)时长总和。 - 睡眠日均睡眠时长:所选周期总睡眠时长 / 周期天数。
- 睡眠日均睡眠次数:所选周期睡眠记录次数 / 周期天数。
- 饮食总进食次数:所选周期内饮食记录总条数。
- 饮食日均进食次数:所选周期饮食记录总条数 / 周期天数。
- 主要进食类型:所选周期内记录次数最多的餐次类型。
-
游客模式可直接使用全部记录功能。
-
设置页支持全局字体缩放(
0.8x ~ 1.5x)。 -
支持 iCloud 同步开关,且仅在“已登录 + 开关开启”时触发云同步。
-
Apple 登录可用;Google/微信当前为入口占位(未配置平台参数时给出提示)。
-
支持退出登录且保留本机数据。
-
细分记录:支持记录早餐、午餐、晚餐、加餐、奶、水(喝水量)
-
快速添加:常用食物一键选择
-
分类统计:按类型汇总进食量、次数与每日喝水量
- Notes 仅用于开发调试,不向用户界面暴露入口。
- 支持 Markdown 内容查看与编辑(内部使用)。
- 笔记内容支持本地持久化,并在满足同步条件时参与 iCloud 同步。
- 平台:iOS 17.0+
- 语言与框架:Swift 5.9+、SwiftUI、Combine
- 存储:
UserDefaults + JSON - 可选同步:
NSUbiquitousKeyValueStore(iCloud KVS) - 架构:Feature 分层(
MomMate/Features/*)+ 共享能力(MomMate/Shared/*)
MomMate/
├── MomMate/
│ ├── App/ # App 入口
│ ├── Main/ # Tab 根导航
│ ├── Features/
│ │ ├── Sleep/
│ │ ├── Meal/
│ │ ├── Milestone/
│ │ ├── Statistics/
│ │ ├── Notes/
│ │ └── Settings/
│ ├── Shared/ # 设计系统、存储键、云同步
│ └── Core/
├── MomMateTests/
└── docs/
- 产品需求:
docs/product/PRD.md - 开发规范:
docs/process/DEVELOPMENT_GUIDELINES.md - 回归清单:
docs/testing/REGRESSION_CHECKLIST.md - 文档总览:
docs/README.md
本项目仅供个人学习和交流使用。