--- name: wind-project-overview description: wind_power_cal 项目概览。用于需要了解工程整体架构、技术栈、目录结构、端口与脚本入口时,先读取本技能获得全局上下文。 --- # wind_power_cal 项目概览 风电功率计算平台,前后端单仓库。技术栈与参考工程 edge_collector 对齐(同 C++ Drogon + React)。 ## 技术栈 - 后端:C++17 + Drogon HTTP 框架(源码编译),可执行 `wind_server` - 前端:React 19 + Vite 8 + react-router 7(`frontend/web_app`) - 第三方:Drogon/Trantor 源码(vendored)、nlohmann/json 头文件库 ## 目录结构 ``` wind_power_cal/ ├── third_party/ │ ├── ensure_third_party.sh # Drogon 源码编译(幂等) │ ├── drogon_repo/ # Drogon + Trantor 源码 │ ├── nlohmann/ # header-only json │ └── drogon/install// # 编译产物(gitignored) ├── backend/ # C++ Drogon 服务 │ ├── CMakeLists.txt build.sh run.sh │ ├── config/server_config.json │ └── src/ main.cpp + controllers/ + utils/ResponseUtil.h ├── frontend/web_app/ # React + Vite ├── package.sh run.sh deploy.sh # 根级 构建/运行/部署 └── CMakeLists.txt # 顶层(arch 检测 + add_subdirectory(backend)) ``` ## 端口 | 服务 | 端口 | | --- | --- | | 后端 wind_server | 8080(监听地址见 server_config.json) | | 前端 dev | 5173(vite proxy `/api` → :8080) | ## 脚本入口 - `./run.sh` 一键打包+前台运行(后端托管 SPA) - `bash backend/run.sh` 仅后端;`cd frontend/web_app && npm run dev` 仅前端 - `./deploy.sh` 部署到远端(见 [[wind-deploy]]) - `bash package.sh [--publish]` 打包到 `runtime/wind_power/` ## 约定 - 响应统一信封 `{"status":0,"msg":"success","data":{...}}`(见 [[wind-backend-conventions]]) - MVP 阶段无数据库 / MQTT / 鉴权;结构就位,可参照 edge_collector 扩展