✨ 企业级后台管理脚手架 · 中台 + 呼叫媒体 · 开箱即用 ✨
🐹 Go + Gin · ⚛️ React + Ant Design · 🧩 微服务 / 单体 / FreeSWITCH
亮点
说明
🧩 多产品线 monorepo
同一仓库:microservices/、monolith/、freeswitch-cc/;一人维护,进程仍可分开部署。
⚛️ 前端统一
两条线均使用 React + Ant Design ,交互一致,降低学习成本。
🐳 开箱即用
Docker Compose 一键拉起依赖、网关/服务与前端;内置 RBAC、日志、监控、迁移。
🏗️ 工程完备
CI、OpenAPI、健康检查、Prometheus、可选链路追踪与对象存储。
🔌 可扩展
微服务按域拆分 + 网关标签接入,适合挂载 AI / IM / 客服等;呼叫媒体面建议 FreeSWITCH 独立项目 对接。
🛠️ 可二次开发
已剥离业务耦合,适合内部运营后台、SaaS 控制台、中台管理端起点。
┌──────────────────────┐
│ 🚀 go-admin-kit │ 一人 monorepo
└──────────┬───────────┘
┌───────────────────────┼───────────────────────┐
▼ ▼ ▼
🧩 microservices/ 📦 monolith/ ☎️ freeswitch-cc/
网关·业务服务·React 单进程·React FS 媒体 + control-api
│ │ ▲
│ 🚫 业务零调用 │ │
└───────────────────────┘ 中台 HTTP 控制 / 事件回传
🔐 登录页
📊 系统概览
👥 用户管理
🛡️ 角色管理
🐘 数据库监控
🔴 Redis 监控
截图来自真实运行界面。UI 大改后可用本机截图覆盖 docs/screenshots/*.png。
层级
技术
说明
语言
Go 1.26
高性能、强类型
HTTP
Gin
路由与中间件
ORM
GORM + pgx
PostgreSQL 访问
迁移
goose
版本化 SQL 迁移
认证
JWT v5
Access / Refresh、吊销与轮转
缓存
Redis 7
限流、在线用户、黑名单等
数据库
PostgreSQL 16
主存储(pgvector 镜像便于 AI 扩展)
层级
技术
说明
框架
React 19
现代并发渲染
语言
TypeScript
类型安全
构建
Vite 8
极速开发与构建
UI
Ant Design 6
企业级组件库
状态
Redux Toolkit
可预测状态
路由
React Router 7
客户端路由
请求
Axios
拦截器 / Token 刷新
组件
技术
说明
网关
Traefik
路由、ForwardAuth 统一验签
消息
NATS JetStream
登录等事件解耦
服务
auth / identity / system / audit / file / ai / monitor
按域拆分
契约
OpenAPI 3.1
从路由生成 + 前端类型
组件
技术
指标
Prometheus 📈
看板
Grafana 📊
链路
OpenTelemetry + Jaeger 🔭
对象存储
MinIO (S3 兼容) 📦
项
技术
容器
Docker Compose 🐳
CI
GitHub Actions ⚙️
提交规范
全中文 Conventional 风格(见 CONTRIBUTING.md)
协作
AGENTS.md 人与 AI 共用规范 🤖
能力
微服务
单体
🔐 登录 / JWT 刷新与撤销 / 验证码 / TOTP
✅
✅
🛡️ RBAC(用户、角色、权限、部门、菜单)
✅
✅
📚 字典、公告、系统设置、在线用户
✅
✅
📝 登录日志 / 操作日志 / 审计日志
✅
✅
📁 文件上传
✅
✅
🖥️ 服务器 / PostgreSQL / Redis / 定时任务监控
✅
✅
❤️ 健康检查、Prometheus metrics
✅
✅
🚪 Traefik 网关 + ForwardAuth
✅
—
📡 NATS 登录事件
✅
—
🤖 AI 对话 / 知识库
✅
—
🐳 Docker Compose 一键启动
✅
✅
Browser 🌐
│
▼
Traefik :8000 🚪
├─ 🔐 认证路径 ──────► auth-service
├─ 👥 用户/角色/… ───► identity-service
├─ 📚 菜单/字典/… ───► system-service
├─ 📝 日志 ──────────► audit-service
├─ 📁 文件/uploads ──► file-service
├─ 🤖 AI ────────────► ai-service
└─ 其余 /api ────────► monitor-service(健康·监控·迁移·兜底)
▲
│ ForwardAuth ──► auth-service /internal/verify
go-admin-kit/
├── microservices/ # 🧩 微服务产品线
│ ├── services/
│ │ ├── auth/ # 🔐 认证、令牌、网关验签
│ │ ├── identity/ # 👥 用户 / 角色 / 权限 / 部门
│ │ ├── system/ # 📚 菜单 / 字典 / 公告 / 设置
│ │ ├── audit/ # 📝 日志与事件消费
│ │ ├── file/ # 📁 文件与 uploads
│ │ ├── ai/ # 🤖 AI 对话与知识库
│ │ └── monitor/ # 📈 监控、健康、共享迁移、兜底
│ ├── web/ # ⚛️ React + Ant Design
│ ├── docker-compose.yml
│ └── README.md
├── monolith/ # 📦 单体产品线(零调用微服务)
│ ├── server/ # 🐹 完整单进程 API
│ ├── web/ # ⚛️ React + Ant Design(独立副本)
│ ├── docker-compose.yml
│ └── README.md
├── freeswitch-cc/ # ☎️ 呼叫媒体(FS + control-api,中台可控)
├── platform/deploy/ # 🔭 Prometheus / Grafana / OTel
├── docs/ # 📖 工程文档
│ ├── PRODUCT_LINES.md
│ └── design/ # IM / FreeSWITCH 等专项设计
├── CONTRIBUTING.md # 🤝 贡献与提交规范
├── AGENTS.md # 🤖 人与 AI 协作规范
└── LOCAL_SETUP.md # 💻 本地联调摘要
🐳 Docker Desktop
可选本地开发:🐹 Go 1.26.3+ 、📦 Node.js 20.19+ / 22.12+ (推荐 24)、npm
git clone https://github.com/SuperiorChuo/go-admin-kit.git
cd go-admin-kit/microservices
cp .env.example .env
docker compose up -d --build
# 或仓库根目录:make compose-up
更多 👉 microservices/README.md
cd go-admin-kit/monolith
cp .env.example .env
docker compose up -d --build
# 或仓库根目录:make mono-up
更多 👉 monolith/README.md
⚠️ 生产环境请立即修改密码,并替换 .env 中的 JWT_SECRET、数据库与中间件密钥。
用途
微服务
单体
前端
3000(网关 8000)
3001
API
经 8000 / 调试 8081+
18081
PostgreSQL
5432
5433
Redis
6379
6380
冲突时在对应目录 .env 中修改 *_PORT 即可。
微服务
cd microservices
docker compose up -d go-admin-kit-postgres go-admin-kit-redis go-admin-kit-nats
cd services/auth && go run ./cmd
cd web && npm ci && npm run dev
单体
cd monolith
docker compose up -d go-admin-kit-mono-postgres go-admin-kit-mono-redis
cd server && go run ./cmd/main.go
cd web && npm ci && npm run dev
完整联调说明 👉 LOCAL_SETUP.md
# 微服务
cd microservices
(cd services/monitor && go test ./... && go vet ./...)
(cd web && npm run lint && npm run build)
npm run test:smoke:unit && npm run test:contract
API_BASE_URL=http://127.0.0.1:8000/api/v1 npm run smoke:api
# 单体
cd monolith
(cd server && go test ./... && go vet ./...)
(cd web && npm run lint && npm run build)
OpenAPI(微服务):
cd microservices
npm run api:contract
git diff --exit-code -- services/monitor/docs/openapi.json
上线前请至少替换:
🔑 JWT_SECRET
🐘 PostgreSQL / 🔴 Redis / 📦 MinIO / 📊 Grafana 等密码与密钥
👤 默认管理员密码策略
🌐 CORS_ALLOW_ORIGINS
完整扩展蓝图见 docs/EXPANSION_PLAN.md · IM 设计 docs/design/im-service.md · 呼叫 docs/design/freeswitch-cc.md 。
定位 :Go Admin Kit 不只是「CRUD 后台模板」,而是面向 运营中台 / 客服与触达 / AI 增强 的可扩展底座。
当前已具备:认证鉴权、RBAC、系统管理、文件、监控,以及微服务线上的 AI 服务雏形 。
下列能力将以 可插拔域服务 方式演进——优先挂在 microservices/,单体线保持精简或按需同步核心能力。
层级
模块
说明
稳定底座
登录鉴权、RBAC、系统管理、文件、审计、监控、网关
日常脚手架主体;发版前仍需 Changelog / E2E / 生产文档
实验特性 🧪
IM 智能客服 、多租户 SaaS 、FreeSWITCH 媒体目录
已可本地演示与迭代,API/表结构可能变 ;不承诺生产就绪
发版状态
暂不发 v0.1.0
功能继续做;正式 tag 等 Phase 0 质量项齐了再打
实验特性文档:docs/design/im-service.md · docs/design/multi-tenant.md · docs/design/freeswitch-cc.md 。
方向
是否契合
理由
🤖 AI / 智能体
⭐⭐⭐⭐⭐
已有 ai-service、pgvector 镜像基础,可自然扩展知识库、工具调用、多模型
💬 IM 即时通讯
⭐⭐⭐⭐
已有 JWT/用户域/WebSocket 通知雏形;适合独立 im-service + 网关路由
🎧 智能客服
⭐⭐⭐⭐⭐
= IM + AI + 工单 + 知识库,正是运营后台的核心场景
☎️ 呼叫中心
⭐⭐⭐⭐
FreeSWITCH 增强做独立项目 ;本仓只做运营台与对接层,避免媒体栈污染脚手架
📱 小程序 / 多端
⭐⭐⭐⭐
共享 identity/auth;小程序是触达通道,B 端管理仍走本脚手架
📊 数据中台大屏
⭐⭐⭐
可复用监控与审计数据;大屏可另仓,管理配置放本仓
建议原则 :核心脚手架保持通用;业务域(IM / 呼叫 / 小程序)以 新微服务 + 网关标签 接入,避免把单体再做成巨石。
规划项
说明
🧠 多模型路由
OpenAI / DeepSeek / 通义 / Ollama / 兼容接口统一编排
📚 企业知识库 2.0
文档解析、切片、向量检索、权限隔离(按部门/角色)
🛠️ Agent 工具调用
查用户、查工单、查订单等「可审计」工具链
🧾 运营助手
公告生成、日志洞察、报表摘要(扩展现有 AI 页面)
🔐 AI 安全
提示词注入防护、敏感数据脱敏、调用审计日志
主战场:microservices/services/ai + 管理端 AI 控制台。
规划项
说明
💬 IM 基础
单聊/群聊、会话列表、已读回执、消息漫游(独立 im-service)
📎 富媒体消息
图片、文件、语音(复用 file / MinIO)
🛎️ 客服工作台
排队、转接、会话分配、坐席状态、快捷回复
🤖 人机协同
机器人预答 → 人工接管;会话摘要与质检
🏷️ 工单联动
会话一键转工单,状态回写管理后台
📡 实时通道
WebSocket / SSE 统一网关鉴权
与现有 RBAC、用户中心、通知体系天然衔接。
Phase 3 · ☎️ 呼叫中心(FreeSWITCH 增强 · 独立项目 )
规划项
说明
🎛️ 媒体面
基于 FreeSWITCH 开源增强:拨号计划、IVR、录音、会议、队列等
📦 monorepo 子目录
媒体代码在 freeswitch-cc/ (与 micro/mono 并列),compose 独立,不编进业务微服务
🔌 与中台关系
中台做 B 端运营台 + 以后 cc-adapter;经 API/Webhook 控制 FS,事件回传话单
👤 坐席台
签入签出、示忙示闲、软电话状态(UI 在本仓,信令/媒体在 FS 项目)
📋 话单与录音
话单入库、录音索引/回放权限;录音可落 MinIO
📊 呼叫报表
接通率、通话时长、放弃率、坐席效能
🔁 全渠道汇聚
电话 + IM + 小程序留言 → 统一客户视图(客户主数据仍在 identity 域)
边界 :FreeSWITCH 集群、编解码、中继对接、高可用媒体 👉 独立项目维护;
本仓库不内嵌 FS 二进制,只保留 管理 API + 控制台页面 + 对接适配层 (可选 cc-adapter 微服务)。
规划项
说明
📱 微信小程序
C 端入口:自助查询、提交工单、在线客服
🔗 统一账号
与 identity/auth 打通(OAuth / 手机号 / openId 绑定)
📣 订阅消息
工单进度、预约提醒等触达
🧩 多小程序/多租户
配置化 appId、品牌、菜单(可与后续 SaaS 化结合)
🌐 H5 / App
同一套 API,差异只在客户端
原则:小程序是通道,B 端运营仍用 Go Admin Kit 后台。
规划项
说明
🏢 多租户 / SaaS
M1:共享库 + tenant_id、登录 tenant_code、租户 CRUD(见 docs/design/multi-tenant.md)
🔌 插件市场
域服务按插件启用(AI / IM / CC …)
📊 数据看板
客服效能、AI 采纳率、渠道转化
🌍 国际化 i18n
管理端多语言
🧩 开放平台
OpenAPI 对外、Webhook、第三方应用授权
1) 底座稳定 + 正式版发布
2) AI 知识库 / 运营助手(已有 ai-service,ROI 最高)
3) IM + 智能客服工作台(强绑定运营场景)
4) 小程序作为 C 端触达
5) 呼叫中心:`freeswitch-cc/` 媒体就绪后,再在 microservices 接管理台 adapter
6) 多租户与开放平台
欢迎在 Issues 投票你最想要的能力 🗳️
本项目基于 MIT License 开源。
如果这个项目对你有帮助,欢迎 ⭐ Star · 🍴 Fork · 🔧 PR ,一起把它打造成更好用的企业中台脚手架!