Refactor GroupOptions model and update documentation
- Removed the `available_nodes` field from the GroupOptions model in `group.py`. - Updated imports in `pwd.py` by removing unused imports. - Added a comprehensive roadmap document outlining the development stages and features for DiskNext Server. - Created a detailed README for the models directory, documenting the database models and their relationships.
This commit is contained in:
275
ROADMAP.md
Normal file
275
ROADMAP.md
Normal file
@@ -0,0 +1,275 @@
|
||||
# DiskNext Server 开发路线图
|
||||
|
||||
本文档概述 DiskNext Server 的开发计划和进度。项目当前处于 **OMEGA** 实验阶段。
|
||||
|
||||
---
|
||||
|
||||
## 版本规划
|
||||
|
||||
| 阶段 | 版本 | 状态 | 说明 |
|
||||
|------|------|------|------|
|
||||
| OMEGA | 0.0.x | **当前** | 实验性开发,API 可能频繁变动 |
|
||||
| Alpha | 0.1.x | 计划中 | 核心功能基本可用 |
|
||||
| Beta | 0.5.x | 计划中 | 功能完善,开始公测 |
|
||||
| RC | 0.9.x | 计划中 | 候选发布版本 |
|
||||
| Stable | 1.0.0 | 计划中 | 正式稳定版本 |
|
||||
|
||||
---
|
||||
|
||||
## OMEGA 阶段 (v0.0.x) - 当前
|
||||
|
||||
### 已完成
|
||||
|
||||
#### 基础架构
|
||||
- [x] FastAPI 应用框架搭建
|
||||
- [x] SQLModel ORM 集成
|
||||
- [x] 异步数据库支持 (aiosqlite)
|
||||
- [x] 项目结构规范化
|
||||
- [x] 开发规范文档 (CLAUDE.md)
|
||||
|
||||
#### 数据模型
|
||||
- [x] 基类定义 (SQLModelBase, TableBase, UUIDTableBase)
|
||||
- [x] 用户模型 (User)
|
||||
- [x] 用户组模型 (Group, GroupOptions)
|
||||
- [x] 统一对象模型 (Object) - 合并文件和目录
|
||||
- [x] 存储策略模型 (Policy)
|
||||
- [x] 分享模型 (Share)
|
||||
- [x] 标签模型 (Tag)
|
||||
- [x] WebDAV 模型 (WebDAV)
|
||||
- [x] 设置模型 (Setting)
|
||||
- [x] 其他模型 (Order, Redeem, Report, Task, SourceLink, StoragePack, Download, Node)
|
||||
|
||||
#### 用户系统
|
||||
- [x] 用户注册接口
|
||||
- [x] 用户登录接口 (OAuth2.1 Password Grant)
|
||||
- [x] JWT 令牌认证
|
||||
- [x] 获取当前用户信息
|
||||
- [x] 用户存储空间查询
|
||||
|
||||
#### 认证安全
|
||||
- [x] Argon2 密码哈希
|
||||
- [x] JWT 令牌生成与验证
|
||||
- [x] 认证中间件
|
||||
- [x] 两步验证 (2FA/TOTP) 初始化与启用
|
||||
- [x] WebAuthn 注册初始化
|
||||
|
||||
#### 测试
|
||||
- [x] pytest 测试框架配置
|
||||
- [x] 单元测试结构
|
||||
- [x] 集成测试结构
|
||||
- [x] 测试夹具 (fixtures)
|
||||
|
||||
### 进行中
|
||||
|
||||
#### 用户系统
|
||||
- [ ] WebAuthn 完整流程
|
||||
- [ ] OAuth 第三方登录 (QQ, GitHub)
|
||||
- [ ] 用户设置管理
|
||||
- [ ] 头像上传/Gravatar
|
||||
|
||||
#### 目录系统
|
||||
- [ ] 目录浏览接口
|
||||
- [ ] 目录创建接口
|
||||
- [ ] 路径解析优化
|
||||
|
||||
#### 存储策略
|
||||
- [ ] 本地存储策略实现
|
||||
- [ ] S3 存储策略实现
|
||||
|
||||
---
|
||||
|
||||
## Alpha 阶段 (v0.1.x) - 计划中
|
||||
|
||||
### 文件操作
|
||||
|
||||
- [ ] 文件上传(单文件)
|
||||
- [ ] 文件上传(分块上传)
|
||||
- [ ] 文件下载
|
||||
- [ ] 文件预览 URL 生成
|
||||
- [ ] 缩略图生成
|
||||
- [ ] 文件移动/复制
|
||||
- [ ] 文件重命名
|
||||
- [ ] 文件删除(软删除/回收站)
|
||||
|
||||
### 目录操作
|
||||
|
||||
- [ ] 目录树查询
|
||||
- [ ] 目录移动/复制
|
||||
- [ ] 目录删除(递归)
|
||||
- [ ] 批量操作
|
||||
|
||||
### 存储策略完善
|
||||
|
||||
- [ ] 阿里云 OSS 支持
|
||||
- [ ] 腾讯云 COS 支持
|
||||
- [ ] 七牛云支持
|
||||
- [ ] OneDrive 支持
|
||||
- [ ] 存储策略切换
|
||||
|
||||
### 用户组权限
|
||||
|
||||
- [ ] 权限验证中间件
|
||||
- [ ] 存储空间限制
|
||||
- [ ] 文件类型限制
|
||||
- [ ] 单文件大小限制
|
||||
|
||||
---
|
||||
|
||||
## Beta 阶段 (v0.5.x) - 计划中
|
||||
|
||||
### 分享功能
|
||||
|
||||
- [ ] 创建分享链接
|
||||
- [ ] 分享密码保护
|
||||
- [ ] 分享过期时间
|
||||
- [ ] 分享访问统计
|
||||
- [ ] 分享页面数据接口
|
||||
|
||||
### 离线下载
|
||||
|
||||
- [ ] Aria2 RPC 集成
|
||||
- [ ] qBittorrent API 集成
|
||||
- [ ] 下载任务管理
|
||||
- [ ] 下载完成回调
|
||||
|
||||
### WebDAV
|
||||
|
||||
- [ ] WebDAV 账号管理
|
||||
- [ ] WebDAV 协议实现
|
||||
- [ ] WebDAV 代理功能
|
||||
|
||||
### 增值服务
|
||||
|
||||
- [ ] 积分系统实现
|
||||
- [ ] 兑换码生成与使用
|
||||
- [ ] 存储容量包
|
||||
- [ ] 订单管理
|
||||
|
||||
### 管理后台
|
||||
|
||||
- [ ] 用户管理接口
|
||||
- [ ] 用户组管理接口
|
||||
- [ ] 存储策略管理接口
|
||||
- [ ] 系统设置接口
|
||||
- [ ] 任务管理接口
|
||||
- [ ] 文件管理接口
|
||||
- [ ] 数据统计接口
|
||||
|
||||
---
|
||||
|
||||
## RC 阶段 (v0.9.x) - 计划中
|
||||
|
||||
### 分布式支持
|
||||
|
||||
- [ ] 从节点注册与认证
|
||||
- [ ] 从节点任务分发
|
||||
- [ ] 从节点健康检查
|
||||
- [ ] 负载均衡
|
||||
|
||||
### 性能优化
|
||||
|
||||
- [ ] 数据库查询优化
|
||||
- [ ] 缓存层 (Redis)
|
||||
- [ ] CDN 集成
|
||||
- [ ] 并发上传优化
|
||||
|
||||
### 安全加固
|
||||
|
||||
- [ ] 速率限制
|
||||
- [ ] 安全审计日志
|
||||
- [ ] 敏感操作二次验证
|
||||
- [ ] CORS 配置优化
|
||||
|
||||
### 在线预览
|
||||
|
||||
- [ ] 图片预览
|
||||
- [ ] 视频播放
|
||||
- [ ] 音频播放
|
||||
- [ ] PDF 预览
|
||||
- [ ] Office 文档预览
|
||||
- [ ] Markdown 渲染
|
||||
- [ ] 代码高亮
|
||||
|
||||
---
|
||||
|
||||
## Stable 阶段 (v1.0.0) - 计划中
|
||||
|
||||
### 功能完善
|
||||
|
||||
- [ ] 全盘搜索
|
||||
- [ ] 文件标签
|
||||
- [ ] 收藏夹
|
||||
- [ ] 最近访问
|
||||
- [ ] 回收站
|
||||
|
||||
### 国际化
|
||||
|
||||
- [ ] i18n 框架集成
|
||||
- [ ] 多语言错误消息
|
||||
- [ ] API 文档多语言
|
||||
|
||||
### 文档完善
|
||||
|
||||
- [ ] API 文档完善
|
||||
- [ ] 部署文档
|
||||
- [ ] 开发者文档
|
||||
- [ ] 用户手册
|
||||
|
||||
### 生产就绪
|
||||
|
||||
- [ ] Docker 镜像
|
||||
- [ ] Docker Compose 配置
|
||||
- [ ] Kubernetes 部署配置
|
||||
- [ ] 监控指标 (Prometheus)
|
||||
- [ ] 健康检查端点
|
||||
|
||||
---
|
||||
|
||||
## 未来展望 (v1.x+)
|
||||
|
||||
### 高级功能
|
||||
|
||||
- [ ] 文件版本历史
|
||||
- [ ] 文件加密存储
|
||||
- [ ] 文件同步客户端 API
|
||||
- [ ] Subsonic 音乐接口
|
||||
- [ ] 照片管理(相册、时间线)
|
||||
- [ ] AI 文件分类与搜索
|
||||
|
||||
### 企业功能 (Pro)
|
||||
|
||||
- [ ] LDAP/AD 集成
|
||||
- [ ] SSO 单点登录
|
||||
- [ ] 审计日志
|
||||
- [ ] 高级权限控制
|
||||
- [ ] 企业工作空间
|
||||
- [ ] 协作功能
|
||||
|
||||
### 生态集成
|
||||
|
||||
- [ ] Rclone 集成
|
||||
- [ ] 备份工具集成
|
||||
- [ ] 移动端 API 优化
|
||||
- [ ] 桌面客户端支持
|
||||
|
||||
---
|
||||
|
||||
## 贡献指南
|
||||
|
||||
如果你想参与项目开发,可以:
|
||||
|
||||
1. 查看上方的待办事项,选择感兴趣的功能
|
||||
2. 在 Issue 中认领任务
|
||||
3. 阅读 [CLAUDE.md](CLAUDE.md) 了解开发规范
|
||||
4. 提交 Pull Request
|
||||
|
||||
我们特别欢迎以下方面的贡献:
|
||||
|
||||
- 存储策略实现(各类云存储)
|
||||
- 测试用例编写
|
||||
- 文档完善
|
||||
- Bug 修复
|
||||
|
||||
---
|
||||
|
||||
*最后更新:2025年12月*
|
||||
Reference in New Issue
Block a user