用科学方法培养习惯,100天非连续完成目标
100打卡器是一个基于行动心理学的习惯养成工具,采用"100天法则"帮助用户在一年内以非连续方式完成目标。通过年度配额法和**执行意图(If-Then)**降低行动门槛,让习惯养成更轻松。
- 📅 非连续100天:一年内完成100天即可,无需连续打卡
- 🎯 执行意图:使用"如果-那么"计划,自动触发行动
- 📊 可视化追踪:日历视图和统计数据,进度一目了然
| 功能 | 说明 |
|---|---|
| 创建习惯 | 最多4个习惯,每个至少3个执行意图 |
| 每日打卡 | 选择执行的意图,每天只能打卡一次 |
| 日历视图 | 可视化显示本月打卡记录,绿色表示已完成 |
| 统计分析 | 查看进度、剩余天数、意图使用频率 |
| 多习惯管理 | Tab 切换不同习惯,独立追踪 |
- FastAPI - 高性能 Python Web 框架
- Python 3.10+ - 标准库(json, datetime, uuid)
- Next.js 14 - React 框架(App Router)
- TypeScript - 类型安全
- Tailwind CSS - 现代化 UI 样式
- date-fns - 日期处理
- JSON 文件 - 轻量级本地存储
- Python 3.10+
- Node.js 18+
- npm 或 pnpm
git clone https://github.com/your-username/100DK.git
cd 100DKcd backend
pip install -r requirements.txt
python main.py后端将在 http://localhost:8000 运行
cd frontend
npm install
npm run dev前端将在 http://localhost:3000 运行
- 打开浏览器访问
http://localhost:3000 - 点击"创建第一个习惯"
- 填写习惯名称和3个执行意图
- 每天打卡并选择执行的意图
习惯名称:每日运动
执行意图:
1. 如果「早上7:00闹钟响」→「立刻下楼快走20分钟」
2. 如果「下雨或雾霾」→「在家做15分钟自重训练」
3. 如果「起晚了」→「晚上8点补运动30分钟」
- 点击"✅ 打卡"按钮
- 选择今天实际执行的意图
- 确认打卡,日历自动更新为绿色
本项目采用 MIT 许可证 - 详见 LICENSE 文件
- 灵感来源:
-年度配额法

(截图来自阳老师知识星球‘安人书院’,微信公众:心智工具箱)
- 执行意图理论:格尔维茨(Peter M Gollwitzer) 《行动心理学》(英文书目:Gollwitzer, P. M., & Bargh, J. A. (1995). The Psychology of Action. Guilford Press. )
- woop方法:《WOOP 思维心理学》或称《反惰性》
⭐ 如果这个项目对你有帮助,请给一个 Star!
Made with ❤️ by [Your Name]