1.2 KiB
1.2 KiB
仓库为典型的前后端分离单仓结构:
backend/src采用 Express 应用层 + Sequelize ORM 的数据访问层划分:config/集中加载.env、数据库、Redis、日志;middleware/放置全局中间件(鉴权、bodyLimit);models/通过index.js统一sync()并导出;routes/按资源拆分路由文件并在routes/index.js聚合挂载;services/封装外部依赖(S3、Curve、EQ 缓存、OTA 存储、用户引导);validators/使用 zod 做入参校验;入口app.js在启动时执行sequelize.sync()与超级管理员引导。frontend/src基于 Vite + Vue3 + Element Plus,main.js引入 Element Plus 暗黑 CSS 变量与自定义lux-theme.css,router/index.js声明式路由,api/目录按资源一一对应后端 REST 接口,views/按功能域组织页面组件,components/存放跨页面复用组件。- 部署由根级
docker-compose.yml编排:backend容器暴露 8083,frontend使用 nginx:alpine 静态托管dist并通过nginx.conf反向代理到后端,共享audio-network网络。 - 顶层
autoeq/存放测量数据 CSV/TXT 样本,scripts/upload.sh用于上传脚本,DEPLOY.md/DESIGN.md记录部署与设计说明。