# kill_bad_habits **Repository Path**: tonggl/kill_bad_habits ## Basic Information - **Project Name**: kill_bad_habits - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-20 - **Last Updated**: 2026-04-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 习惯破局者 一款基于心理学理论的微信小程序,帮助用户通过 21 天周期养成好习惯、改掉坏习惯。 ## 产品理念 基于三大心理学理论: - **自我效能感** (Bandura) - 相信自己能改变 - **习惯循环** (Duhigg) - 线索 → 行为 → 奖励 - **认知行为疗法** (CBT) - 通过改变思维改变行为 ## 核心模型 **单习惯专注模式**:21 天只专注改变一个核心习惯,提高成功率 ## 页面结构 ``` ├── onboarding/ # 新用户 onboarding (4步 + 推荐) │ ├── step1-4.vue # 心理学理论介绍 │ ├── recommend.vue # 推荐计划选择 │ └── market/ # 计划市场 ├── index/ # 首页 - 今日任务概览 ├── plan/ # 计划页 - 今日打卡 ├── data/ # 数据页 - 成长记录 └── profile/ # 我的 - 个人信息 ``` ## 用户操作流程 ### 1. Onboarding 流程 ``` step1 → step2 → step3 → step4 → recommend → market/template → 首页 ``` | 页面 | 内容 | |------|------| | step1 | 欢迎页,介绍产品 | | step2 | 自我效能感理论介绍 | | step3 | 习惯循环理论介绍 | | step4 | CBT理论介绍 | | recommend | 根据用户选择推荐习惯计划 | | market | 浏览更多计划分类 | | template | 查看计划详情并选择 | ### 2. 日常使用流程 ``` 首页 (查看今日任务) → 计划页 (完成任务/打卡) → 首页 (查看打卡结果) ↓ 数据页 (查看成长数据) ↓ 我的 (查看设置/成就) ``` ### 3. 计划执行流程 用户在**计划页**完成以下操作: 1. 查看今日任务(主攻任务 + 阶段信息) 2. 选择难度模式(正常/降级/替换) 3. 点击「完成今日打卡」 ## 业务流程 ### 21天周期模型 ``` ┌─────────────────────────────────────────────────────┐ │ 21 天周期 │ ├─────────────┬─────────────┬─────────────┤ │ 基础期 │ 强化期 │ 巩固期 │ │ 第1-7天 │ 第8-14天 │ 第15-21天 │ │ 养成意识 │ 克服阻碍 │ 形成自然 │ └─────────────┴─────────────┴─────────────┘ ``` ### 难度模式 | 模式 | 说明 | 使用场景 | |------|------|----------| | 正常 | 按计划执行 | 状态良好时 | | 降级 | 降低难度 | 状态不佳时 | | 替换 | 最小行动 | 无法执行时 | ### 数据指标 | 指标 | 说明 | |------|------| | 连续打卡天数 | 持续坚持的天数 | | 完成率 | 已完成天数 / 总天数 | | 自控力变化 | 最新分数 - 初始分数 | | 周期进度 | 当前所处阶段 | ## 技术架构 ### 数据层 (`uniapp/utils/storage.js`) 使用 `uni.getStorageSync` / `uni.setStorageSync` 本地存储 | 数据键 | 内容 | |--------|------| | user | 用户信息、周期天数 | | habits | 习惯配置、当前计划 | | checkIn | 打卡记录、历史 | | statistics | 统计数据、阶段信息 | | achievements | 成就徽章 | | settings | 提醒设置 | | tips | 教练贴士 | ### 迁移到后端 将 storage.js 中的存储方法替换为 API 调用即可 ## 开发运行 ### Uni-app (微信小程序) 1. 打开 HBuilderX 2. 导入 `uniapp` 文件夹 3. 运行:`Ctrl+R` 在微信开发者工具中预览 ### Tabbar 图标 需要添加以下图标到 `static/tabbar/` (81x81px): - `home.png` / `home-active.png` - `plan.png` / `plan-active.png` - `data.png` / `data-active.png` - `profile.png` / `profile-active.png` ## 配色方案 | 用途 | 色值 | |------|------| | 主色 | `#2A9D8F` (teal) | | 浅色背景 | `#E9F6F3` | | 深色文字 | `#2D3748` | | 次要文字 | `#4A5668` | ## 目录结构 ``` uniapp/ ├── pages/ │ ├── index/ # 首页 │ ├── plan/ # 计划页 │ ├── data/ # 数据页 │ ├── profile/ # 个人中心 │ ├── onboarding/ # 引导流程 │ └── market/ # 计划市场 ├── data/ │ └── plans.js # 习惯计划数据 └── utils/ └── storage.js # 数据存储工具 ```