chore: 初始化仓库结构

- 建立 monorepo 结构:app/ + server/ + docs/
- 纳入全部需求/架构/开发计划文档
- 新增 docs/PROGRESS.md 功能状态总览
- 新增 docs/decisions/ ADR 决策记录(001-004)
- 新增根目录 README.md 含 AI 阅读指引
- 新增 .gitignore

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-24 16:39:16 +08:00
co-authored by Claude Sonnet 4.6
commit a1561c7d43
17 changed files with 1093 additions and 0 deletions
@@ -0,0 +1,33 @@
# ADR-001 采用 Monorepo 单仓库管理 app / server / docs
**状态:** 已采纳 ✅
**日期:** 2026-05-24
---
## 背景
项目包含前端(app)、后端(server,Phase 4 启动)、文档(docs)三部分,需要决定是用一个 git 仓库还是多个仓库管理。
## 决策
所有代码和文档放在同一个 git 仓库,采用 monorepo 结构:
```
life_goals/
├── app/
├── server/
└── docs/
```
## 原因
- **小团队 / 个人项目**:管理一个仓库比同步多个仓库负担小得多
- **前后端强耦合**:同一个功能(如账号体系)需要同时改 app 和 server,monorepo 可以一个 commit 完成
- **AI 协作友好**:AI 在同一仓库内能同时看到代码和文档,理解更准确
- **文档即代码**:需求变更和代码变更在同一条时间线,不会出现文档滞后
## 影响
- `server/` 目前为占位目录,Phase 4 再填充内容
- 如未来 server 需要被多个产品复用,再考虑拆出独立仓库
@@ -0,0 +1,27 @@
# ADR-002 PWA 优先验证市场,再做 Capacitor 原生打包
**状态:** 已采纳 ✅
**日期:** 2026-05-24
---
## 背景
App 需要在手机上使用,面临两个选择:直接打包成原生 App,或先做 PWA 验证需求。
## 决策
**Phase 2 先做 PWA**,让用户在手机浏览器「添加到主屏幕」使用。确认产品有市场价值后,**Phase 3 再用 Capacitor 打包** Android APK / iOS IPA。
## 原因
- PWA 只需加 `manifest.json` + Service Worker,改动极小
- Capacitor 打包需要引入 Vite、替换存储方案、配置 Android Studio / Xcode,成本高
- 先用 PWA 以最低成本验证:用户留存率、复盘频率、AI 功能使用率
- 验证有价值后再投入打包成本,避免过早优化
## 影响
- Artifact Storage API 是 Claude 平台专属,PWA 独立部署后需替换为 localStorage
- iOS Safari 对 PWA 支持有限,是已知限制,PWA 阶段接受
- Capacitor 打包触发条件:Phase 2 验证指标达标
@@ -0,0 +1,33 @@
# ADR-003 本地优先存储,账号为可选功能
**状态:** 已采纳 ✅
**日期:** 2026-05-24
---
## 背景
App 需要数据持久化,需要决定是否强制登录,以及何时引入账号体系。
## 决策
采用三阶段演进:
| 阶段 | 登录 | 存储 |
|------|------|------|
| 开发调试期(当前) | 免登录 | 本地 |
| 用户增长期(Phase 2-3) | 可选注册 | 本地(默认)/ 服务端(登录后) |
| 商业化期(Phase 4+) | 登录必要 | 服务端 |
## 原因
- **降低启动门槛**:打开即用,无需注册,用户转化率更高
- **先验证价值**:让用户先体验到产品价值,再引导注册,信任成本低
- **账号是收费前置**:Phase 5 会员收费需要账号体系,Phase 4 作为前置建设
- **参考案例**:Obsidian、Bear 等 Local-First 应用均采用此模式
## 影响
- 游客首次登录时需处理本地数据迁移(按时间戳合并为推荐策略)
- 引入后端时,Anthropic API 调用需同步迁移至服务端(保护 API Key)
- 换设备 / 清缓存会丢失游客数据,这是已知限制,通过引导注册解决
@@ -0,0 +1,33 @@
# ADR-004 提供初始化模版降低新用户门槛
**状态:** 已采纳 ✅
**日期:** 2026-05-24
---
## 背景
外部用户首次打开 App 时,面对空白目标树不知道如何填写,容易流失。
## 决策
**Phase 2 PWA 上线时**引入初始化模版系统:
- **通用模版**:纯结构 + 占位符,适合所有人
- **6 类人生方向模版**:职业发展 / 创业副业 / 学习提升 / 健康生活 / 家庭生活 / 自由探索
- 用户也可选择「空白开始」
**Phase 5 会员阶段**提供精品行业模版库作为付费内容。
## 原因
- 新用户看到结构示例后能快速理解产品价值
- 模版是起点,用户可自由编辑,不构成约束
- 自用阶段(当前)无需此功能,Phase 2 面向外部用户时引入
- 免费模版 vs 付费精品模版形成分层,支撑商业化
## 影响
- Phase 2 开发时需新增「欢迎页 + 模版选择」流程
- 模版内容需要打磨文案,覆盖主流人群
- 精品模版定价和内容在 Phase 5 决策