refactor: split app structure
This commit is contained in:
@@ -15,6 +15,18 @@
|
||||
- `scripts/install_launch_agent.py`:安装 Mac 开机常驻同步任务。
|
||||
- `launchd/com.xsk.records.sync.plist.template`:LaunchAgent 模板。
|
||||
|
||||
## 后端结构
|
||||
|
||||
- `app/main.py`:FastAPI 应用入口,只负责注册路由和全局异常处理。
|
||||
- `app/routers/`:按业务入口拆分 API 和页面路由,包括登录页面、课程记录、课时账户、管理后台、课程小结推送和健康检查。
|
||||
- `app/config.py`:路径、环境变量、Cookie 名称和进程内写锁。
|
||||
- `app/auth.py`:网页登录、Basic Auth、管理后台和课程小结推送鉴权。
|
||||
- `app/schemas.py`:请求体 Pydantic 模型。
|
||||
- `app/api_utils.py`:API 层通用读取、文件元信息和请求体转换。
|
||||
- `app/domain.py`:领域数据结构、学生/科目别名、状态和识别常量。
|
||||
- `app/storage.py`:原子写入、权限继承和业务数据备份。
|
||||
- `app/data.py`:业务数据解析、登记、审核、课程小结入库和查询逻辑。
|
||||
|
||||
## 首次部署
|
||||
|
||||
推荐先配置 SSH key。若临时使用密码,可通过环境变量传入,不要写入仓库文件。
|
||||
|
||||
Reference in New Issue
Block a user