init
This commit is contained in:
107
docs/overview.md
Normal file
107
docs/overview.md
Normal file
@@ -0,0 +1,107 @@
|
||||
# Todolist 全功能应用计划
|
||||
|
||||
## 目标与范围
|
||||
构建一个“复杂但可靠”的 Todo 应用,覆盖前后端、鉴权、权限、数据一致性、性能与观测等完整链路,满足生产级实践。
|
||||
|
||||
- 支持个人/团队任务管理
|
||||
- 分布式微服务架构,Kubernetes 部署
|
||||
- 网页/小程序/移动端 多端适配
|
||||
|
||||
## 功能规划
|
||||
### 1. 用户与权限
|
||||
- 用户注册/登录/退出
|
||||
- JWT + Refresh Token 机制
|
||||
- 角色权限(普通用户/管理员)
|
||||
- 多租户可选(组织/团队)
|
||||
|
||||
### 2. 任务管理(核心)
|
||||
- 任务 CRUD(标题/描述/截止时间/优先级/标签/附件)
|
||||
- 任务状态流转(待办/进行中/完成/归档)
|
||||
- 子任务、多级任务
|
||||
- 任务排序、拖拽
|
||||
- 批量操作
|
||||
|
||||
### 3. 数据同步与协作
|
||||
- 实时同步(WebSocket/Server-Sent Events)
|
||||
- 冲突处理与版本号控制
|
||||
- 离线缓存与恢复
|
||||
|
||||
### 4. 通知与提醒
|
||||
- 站内通知、邮件通知、Webhook
|
||||
- 定时提醒(cron/队列驱动)
|
||||
|
||||
### 5. 搜索与分析
|
||||
- 全文检索
|
||||
- 任务完成度、统计报表
|
||||
- 活跃度/时间分布
|
||||
|
||||
---
|
||||
|
||||
## 技术架构
|
||||
### 服务划分(微服务)
|
||||
- 网关/API Gateway(统一入口、路由、鉴权前置、限流)
|
||||
- 认证服务(登录、注册、令牌、会话)
|
||||
- 用户服务(用户资料、偏好)
|
||||
- 个人任务服务(个人任务、标签、提醒)
|
||||
- 团队服务(团队/组织、成员、角色)
|
||||
- 团队任务服务(团队任务、协作、权限)
|
||||
- 通知服务(站内/邮件/Webhook)
|
||||
- 搜索服务(索引与查询)
|
||||
- 统计分析服务(报表、指标)
|
||||
- 通信协议:统一使用 HTTP RESTful
|
||||
|
||||
### 前端
|
||||
- 框架:Vue 3 + Vite + TypeScript
|
||||
- 状态管理:Pinia
|
||||
- UI:自定义设计系统 + Tailwind / Radix
|
||||
- 路由:Vue Router
|
||||
- 数据请求:TanStack Query(Vue)
|
||||
|
||||
### 后端
|
||||
- 语言:Go
|
||||
- Web 框架:Gin
|
||||
- DB:PostgreSQL
|
||||
- ORM/数据访问:GORM + sqlc(学习对比,混合使用)
|
||||
- 缓存:Redis
|
||||
- 搜索:Elastic
|
||||
- 消息队列:Kafka
|
||||
|
||||
### 中间件/基础设施
|
||||
- 鉴权中间件(JWT/Session)
|
||||
- 日志与监控(Zap + Prometheus + Grafana)
|
||||
- 链路追踪(OpenTelemetry)
|
||||
- 配置管理(Viper)
|
||||
- 容器化与编排(Docker + Kubernetes)
|
||||
- 服务发现与配置(K8s Service/ConfigMap/Secret)
|
||||
|
||||
---
|
||||
|
||||
## 分阶段实施计划
|
||||
### 阶段 1:核心 MVP
|
||||
- 用户注册/登录
|
||||
- 任务 CRUD
|
||||
- 基础列表/详情页面
|
||||
- 基础权限控制
|
||||
|
||||
### 阶段 2:增强功能
|
||||
- 子任务、多标签
|
||||
- 搜索功能
|
||||
- 任务统计报表
|
||||
|
||||
### 阶段 3:协作与实时
|
||||
- WebSocket 实时同步
|
||||
- 冲突处理机制
|
||||
- 离线缓存支持
|
||||
|
||||
### 阶段 4:运维与优化
|
||||
- 监控报警
|
||||
- CI/CD 自动化
|
||||
- 性能优化与安全审计
|
||||
- 微服务拆分与 K8s 部署(服务编排、网关、灰度发布)
|
||||
|
||||
---
|
||||
|
||||
## 测试与交付
|
||||
- 单元测试、集成测试
|
||||
- API 文档(OpenAPI)
|
||||
- 端到端测试(Cypress/Playwright)
|
||||
Reference in New Issue
Block a user