# Spec Kit Overview 本文件用于简短记录当前项目每个 spec 的核心内容摘要,便于快速总览与追踪变更。 ## Client Bootstrap - **目标**:初始化正念 APP 客户端工程规范,确保可运行、可切环境、可多语言扩展、目录标准化、可 EAS 打包 - **核心范围**:客户端工程骨架与文档(`client/README.md`)、环境变量约定、i18n(CN/EN/ES/PT/TC)、推送/小组件/卡片滑动的一期能力约束 - **主要约定**: - 环境:`.env.dev` / `.env.prod`,推荐 `EXPO_PUBLIC_` 前缀 - 语言码:`zh-CN/en/es/pt/zh-TW` - 目录:`app/`(可选 expo-router)+ `src/`(features/services/store/utils 等)+ `assets/` - 打包:EAS Build,dev/prod bundle id 约定 - **阶段产物**: - `spec_kit/Client Bootstrap/spec.md` - `spec_kit/Client Bootstrap/plan.md` - `spec_kit/Client Bootstrap/tasks.md` - **已完成编码(阶段性)**: - Expo 工程已在 `client/` 初始化,并完成 `pnpm install` - i18n 基座已接入:5 份语言资源 + 设备语言优先/设置可切换/持久化 + 入口初始化 ## Project Bootstrap - **目标**:完成项目仓库初始化与工程约定落地,明确 client/server 结构、dev/pro 环境隔离、MySQL/Redis 资源命名与访问边界 - **核心范围**:根目录结构与文档、dev/pro 配置策略、MySQL schema 命名(`mindfulness_dev`/`mindfulness`)、Redis ACL + key 前缀隔离(`dev:*`/`pro:*`) - **主要约定**: - MySQL:prod=`mindfulness`,dev=`mindfulness_dev`,统一 `utf8mb4` 与 snake_case - Redis:单实例,通过 ACL 限制不同用户只能访问对应前缀;应用侧强制 key 使用 `dev:`/`pro:` 前缀 - 安全:真实 IP/账号/密码/Token 不写入仓库,仅提供 `.env.example` 结构 - **阶段产物**: - `spec_kit/Project Bootstrap/spec.md` ## Onboarding App Shell - **目标**:落地首次进入体验(Onboarding 3–5 页可跳过 + Push 设置可跳过)与主应用壳(点赞/讨厌、收藏夹入口、通用设置入口) - **核心范围**:Onboarding 多页流程、Push 引导页、主界面反应操作(Like/Dislike)、收藏夹、设置页(版本、iOS 小组件入口/说明) - **阶段产物**: - `spec_kit/Onboarding App Shell/spec.md`