技术栈
前端(frontend/management/)
React 19 单页应用。
| 类别 | 技术 | 版本 |
|---|---|---|
| 框架 | React | 19 |
| 构建工具 | Vite | 8 |
| 语言 | TypeScript | 7 |
| UI 组件库 | antd | 6 |
| 图标 | @ant-design/icons | 6 |
| 路由 | react-router-dom | 7 |
| HTTP 客户端 | axios | 1.20+ |
| 图表 | echarts | 6 |
| 日期处理 | dayjs | 1.11+ |
| 进度条 | nprogress | 0.2 |
| 数据校验 | zod | 4 |
| 加密 | sm-crypto | 0.5 |
| Lint / 格式化 | oxlint · prettier | — |
后端(cmd/、internal/)
Go 单一二进制。
| 类别 | 技术 |
|---|---|
| 语言 | Go 1.26 |
| 入口 | 仓库根 main.go(go build -o GoPanel .);cmd/gopanel/main.go 为等价薄壳,启动编排在 internal/app |
| Web 框架 | webx-top/echo |
| 核心库 | coscms/webcore |
| ORM | GORM |
| 配置 | viper |
| API 文档 | swaggo/swag(Swagger UI) |
| 数据库 | SQLite(默认,纯 Go 驱动)/ MySQL 5.7+ / MariaDB / PostgreSQL 18+ |
| 模块路径 | cnb.cool/liumou_site/GoPanel |
| 代码质量 | gvt 钩子(格式化 / 行数 / lint / 类型 / 构建) |
架构分层
后端业务代码按四层组织:
text
handler → service → repository → modelhandler只负责参数绑定与响应service编排业务逻辑与仓储repository是唯一查询层model统一存放数据结构定义
官网与文档
| 类别 | 技术 |
|---|---|
| 站点框架 | VitePress 1.6 |
| 目录 | frontend/vitepress/ |
| 部署 | 腾讯云 EdgeOne Pages(CNB 流水线在 master push 时构建并部署) |
交付形态
| 形态 | 产物 |
|---|---|
| 二进制 | GoPanel-linux-{amd64,arm64,arm-softfloat}(入口为根包或 cmd/gopanel,前端经 go:embed 嵌入) |
| 后端镜像 | backend(前端已嵌入,多架构) |
| 前端镜像 | frontend(Nginx + /api 反代) |
| 单容器版 | allinone(Caddy)/ nginx-allinone(Nginx) |
