- 顶层 `docker-compose.yml` 定义两个服务:`backend`(Node/Express)与 `frontend`(Nginx),二者通过自定义 bridge 网络 `audio-network` 互通;Nginx 将 `/api/*` 反向代理到 backend:8000。 - 所有子模块共享根级 `.env`(由 `.env.example` 提供模板),后端通过 `config/loadEnv.js` 读取,前端在构建期由 Vite 注入 `VITE_APP_*` 变量,形成“一份配置、两端消费”的契约。 - 业务边界按目录切分:`backend/src` 提供 REST API(路由→服务→模型/存储),`frontend` 为旧版 Vue2 管理界面,`frontend_v2` 为新版 Soybean Admin(Vue3 + pnpm workspace),两者调用同一套后端接口,构成前后端分离的双版本前端并存形态。 - `autoeq/` 存放频响测量 CSV 数据,`scripts/upload.sh` 配合 OTA 上传流程,是后端 `services/otaStorage.js` 与 `measurementStorage.js` 的数据源。