# xuke **Repository Path**: ziangu/xuke ## Basic Information - **Project Name**: xuke - **Description**: 序刻是一款优雅的个人任务与效率管理系统,采用前后端分离架构,支持多主题切换、国际化(中文/English)、完整的用户权限管理等功能。 - **Primary Language**: Unknown - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-28 - **Last Updated**: 2026-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 序刻 (Xuke) - 个人任务管理系统 [English](README_en.md) | 简体中文 ## 项目简介 序刻是一款优雅的个人任务与效率管理系统,采用前后端分离架构,支持多主题切换、国际化(中文/English)、完整的用户权限管理等功能。 ## 技术栈 ### 前端 - **框架**: Vue 3 + Composition API - **构建工具**: Vite 5 - **UI 组件库**: Naive UI - **样式**: Tailwind CSS - **状态管理**: Pinia - **路由**: Vue Router 4 - **国际化**: Vue I18n - **图表**: ECharts - **图标**: @vicons/ionicons5 ### 后端 - **框架**: FastAPI - **数据库**: SQLite + SQLAlchemy (Async) - **认证**: JWT (python-jose) + bcrypt - **邮件**: SMTP - **定时任务**: APScheduler - **服务器**: Uvicorn ## 功能特性 ### 核心功能 - [x] 任务管理(创建、编辑、删除、完成) - [x] 任务标签管理 - [x] 任务列表管理 - [x] 日历视图 - [x] 甘特图视图 - [x] 完成任务历史 - [x] 统计面板 ### 提醒功能 - [x] 定时提醒 - [x] 邮件提醒通知 ### 系统设置 - [x] 多主题支持(商务蓝、极简白、护眼绿、深空灰) - [x] 登录页面布局自定义 - [x] Logo 和 Favicon 自定义 - [x] 中英文切换 - [x] 数据备份(CSV 导出) ### 用户管理 - [x] 用户注册与登录 - [x] 角色权限(管理员/普通用户) - [x] 用户禁用/启用 - [x] 个人信息管理 - [x] 忘记密码(邮件重置) ## 项目结构 ``` xuke/ ├── client/ # 前端项目 │ ├── public/ # 静态资源 │ │ ├── favicon.svg # Favicon │ │ └── logo.svg # Logo │ ├── src/ │ │ ├── api/ # API 接口封装 │ │ ├── assets/ # 静态样式 │ │ ├── components/ # 公共组件 │ │ ├── i18n/ # 国际化配置 │ │ │ └── locales/ # 语言文件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # Pinia 状态管理 │ │ ├── utils/ # 工具函数 │ │ ├── views/ # 页面组件 │ │ │ └── settings/ # 设置页面 │ │ ├── App.vue # 根组件 │ │ └── main.js # 入口文件 │ ├── index.html # HTML 入口 │ ├── package.json │ ├── vite.config.js # Vite 配置 │ ├── tailwind.config.js # Tailwind 配置 │ └── postcss.config.js # PostCSS 配置 │ ├── server/ # 后端项目 │ ├── app/ │ │ ├── routes/ # API 路由 │ │ ├── schema_defs/ # Pydantic 模型 │ │ ├── utils/ # 工具函数 │ │ ├── __init__.py │ │ ├── auth.py # 认证逻辑 │ │ ├── config.py # 配置 │ │ ├── database.py # 数据库连接 │ │ ├── logging_.py # 日志配置 │ │ ├── models.py # SQLAlchemy 模型 │ │ └── schemas.py # Pydantic 模型 │ ├── uploads/ # 上传文件目录 │ │ ├── logos/ # Logo 存储 │ │ └── favicons/ # Favicon 存储 │ ├── backups/ # 备份文件目录 │ ├── main.py # 应用入口 │ └── requirements.txt # Python 依赖 │ ├── .gitignore └── README.md ``` ## 快速开始 ### 环境要求 - Node.js >= 18 - Python >= 3.10 ### 1. 克隆项目 ```bash git clone cd xuke ``` ### 2. 启动后端服务 ```bash cd server # 创建虚拟环境(可选) python -m venv venv source venv/bin/activate # Linux/Mac # 或 venv\Scripts\activate # Windows # 安装依赖 pip install -r requirements.txt # 启动服务 python main.py ``` 后端服务将在 http://localhost:8002 启动 ### 3. 启动前端服务 ```bash cd client # 安装依赖 npm install # 启动开发服务器 npm run dev ``` 前端服务将在 http://localhost:3000 启动 ### 4. 访问系统 打开浏览器访问 http://localhost:3000 默认管理员账号: - 用户名: admin - 密码: admin ## 配置说明 ### 数据库 默认使用 SQLite 数据库,文件位于 `server/xuke.db` ### 上传文件 上传的 Logo 和 Favicon 保存在: - `server/uploads/logos/` - `server/uploads/favicons/` ### 备份文件 导出的 CSV 备份文件保存在 `server/backups/` 目录 ## API 接口 | 模块 | 路径 | 说明 | |------|------|------| | 认证 | `/api/auth/*` | 登录、注册、忘记密码 | | 任务 | `/api/tasks/*` | 任务 CRUD | | 标签 | `/api/tags/*` | 标签管理 | | 列表 | `/api/lists/*` | 任务列表管理 | | 提醒 | `/api/reminders/*` | 提醒管理 | | 通知 | `/api/notifications/*` | 通知管理 | | 统计 | `/api/stats/*` | 统计数据 | | 备份 | `/api/backup/*` | 数据备份导出 | | 设置 | `/api/settings/*` | 系统设置 | | 用户 | `/api/users/*` | 用户管理 | | 公开设置 | `/api/public-settings` | 公开设置(无需认证) | ## 主题配色 系统提供四种预设主题: | 主题 | 主色调 | 风格定位 | |------|--------|----------| | 商务蓝 | `#0056D2` | 稳重、高效、可信赖 | | 极简白 | `#2D3436` | 干净、空灵、专注 | | 护眼绿 | `#27AE60` | 清新、健康、成长 | | 深空灰 | `#6C5CE7` | 现代、科技、沉浸 | ## 许可证 Copyright (c) 2024 顾子鞍 邮箱:gza5210@163.com ## 联系方式 - 邮箱: gza5210@163.com - 姓名: 顾子鞍