项目结构
本文档描述当前仓库的实际结构,重点以 2026-07-27 的工作树为准。
根目录
text
FastAPI-Vue-Admin/
├── server/ # 后端服务
├── web/ # 前端项目
├── docs/ # VitePress 文档
├── docker/ # Docker 相关文件
├── README.md
├── README.en.md
└── docker-compose.yml后端结构
text
server/
├── main.py # 启动入口,检测是否已初始化
├── app.py # FastAPI 应用入口
├── config.yaml # 仓库安全模板,初始化后会被覆写
├── annotation/ # 认证、日志等装饰器
├── core/ # 核心业务与公共能力
├── exceptions/ # 异常定义和处理
├── middlewares/ # 中间件
├── modules/ # 按业务域组织的模块
├── resources/ # 静态资源、模板、数据文件
├── setup/ # 初始化向导
├── utils/ # 配置、数据库、缓存、响应等工具
└── fva_mcp/ # MCP 服务modules/ 组织方式
当前后端不是旧版的平铺 apis/ 结构,而是按业务聚合:
text
modules/
├── user/
├── role/
├── department/
├── permission/
├── config/
├── notification/
└── ...一个典型模块会包含:
text
module-name/
├── model.py
├── schema.py
├── service.py
└── router.py前端结构
text
web/
├── .env
├── package.json
├── vite.config.ts
└── src/
├── api/
├── components/
├── composables/
├── config/
├── directives/
├── enums/
├── locales/
├── router/
├── store/
├── utils/
└── views/与当前项目状态相关的几点
- 国际化资源位于
web/src/locales/langs/*.json - 当前前端默认使用后端路由模式,见
web/.env - 登录、租户选择、系统管理页面都在
web/src/views/下
初始化相关文件
准备首次运行时,重点关注:
server/main.pyserver/config.yamlserver/setup/
当前设计是:
- 仓库内提交模板配置
- 启动时检测
initialized - 未初始化则进入 setup
- setup 完成后写入真实配置并切换到正式服务
文档与代码对齐原则
如果后续再调整结构,文档应优先和下面这些事实保持一致:
- 后端是否仍然以
modules/为核心 server/config.yaml是否仍作为模板提交- 前端是否仍默认后端路由模式
- 初始化入口是否仍由
server/main.py控制
