whosedreamisthis/habit-tracker
GitHub: whosedreamisthis/habit-tracker
一个基于AI的习惯追踪应用,通过个性化建议和进度可视化帮助用户培养好习惯。
Stars: 0 | Forks: 0
# 习惯追踪器
一个现代的、AI驱动的习惯追踪应用,基于Next.js构建,拥有简洁的用户界面、使用MongoDB进行持久化数据存储,并通过Google Gemini AI提供个性化习惯建议。
## 🎨 设计致谢
本项目的UI/UX设计灵感来源于教程:[构建一个全栈AI驱动的习惯追踪应用](https://www.youtube.com/watch?v=PO-UZsQnkNU&list=PLbRpkalMD_hxM8lBsTiRetKkrd-QyDxEQ&index=1) (MERN Stack)。
## ✨ 核心功能
- **个性化仪表盘**:美观地展示您的日常习惯、连胜记录和整体进展。
- **AI习惯建议**:告诉AI您的目标和困扰,即可获得根据您的生活方式定制的3个个性化习惯建议。
- **AI周报**:根据您的完成历史,由AI生成绩效摘要和可操作的见解。
- **晨间激励**:以AI生成的励志语开启您的一天。
- **智能连胜记录**:自动计算每日和每周习惯的活跃连胜与最佳连胜记录。
- **交互式进度可视化**:通过GitHub风格的活动网格和环形进度条直观展现您的坚持程度。
- **演示模式**:使用预填充的访客账户探索完整应用——无需注册。
- **多用户支持**:通过Clerk实现安全的身份验证和数据隔离。
- **响应式设计**:针对桌面和移动设备优化,移动端具备固定的导航栏。
## 🛠️ 入门指南
### 前置条件
- Node.js 18+
- MongoDB实例(本地或Atlas)
- 用于身份验证的Clerk账户
- Google Gemini API密钥
### 安装说明
1. 克隆仓库:
```
git clone
```
```
cd habit-tracker
```
2. 安装依赖项:
```
npm install
```
3. 设置环境变量:
在根目录创建一个 `.env` 文件,并添加以下内容:
```
# MongoDB
MONGO_URI=your_mongodb_uri
# Clerk
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_publishable_key
CLERK_SECRET_KEY=your_secret_key
# Gemini AI
GEMINI_API_KEY=your_gemini_api_key
```
4. 种子数据库(可选):
```
npm run db:seed
```
5. 启动开发服务器:
```
npm run dev
```
## 📁 项目结构
- `app/`:Next.js App Router页面与布局。
- `components/`:可复用的React组件,按功能(如仪表盘、导航、表单等)组织。
- `lib/`:工具函数、数据库模型、服务器操作和常量定义。
- `public/`:静态资源。
- `proxy.ts`:用于路由保护和演示模式处理的中间件。
标签:AI增强, AI建议, API集成, Clerk认证, GitHub风格, Google Gemini AI, MongoDB, React, Syscalls, TypeScript, 个性化, 习惯追踪, 交互式进度, 可观测性, 后端开发, 周报生成, 响应式设计, 多用户支持, 安全插件, 数据持久化, 早安激励, 智能连续性, 活动网格, 用户认证, 移动端优化, 进度可视化, 连续性计算