GoShop:用 Go 重写的开源电商系统
2026-04-29 · 技术 · 👁 98
· Go · 开源 · 电商 · GoShop
为什么做 GoShop
市面上成熟的开源电商系统大多基于 PHP(如 ShopXO、ECShop),Go 生态里一直缺少一个功能完整的电商方案。GoShop 就是为了填补这个空白——用 Go 重写一套完整的电商系统,对标 ShopXO v6.8.0 的功能覆盖度。
技术栈
- 后端:Go + Gin + GORM + MySQL
- 管理后台:Next.js + Ant Design,72 个管理页面
- PC 前台:Next.js + Tailwind CSS,Apple 风格 UI
- 手机端:兼容 shopxo-uniapp 社区项目
- 缓存:Redis 可选,不配置自动用内存缓存
核心数据
| 指标 | 数值 |
|---|---|
| Gin 路由数 | 392 条 |
| ShopXO 功能对齐率 | ~97%(人工核对) |
| uni-app 兼容动作数 | 82 个 s= 动作 |
| 管理后台页面数 | 72 个 |
| 支付驱动 | 12 种 |
功能亮点
完整的电商能力
商品管理(多规格、多SKU)、订单全流程、购物车、收货地址、商品收藏、浏览记录、商品评价、积分签到、消息通知——标准电商该有的都有。
营销工具
- 秒杀:乐观锁 + 限购,防超卖
- 拼团:自动成团机制
- 优惠券:满减、折扣、新人券
- 促销活动:限时折扣、满减活动
分销体系
三级分销、佣金自动计算、提现审核,开箱即用。
DIY 装修
集成 shopxo-diy 可视化拖拽编辑器,商城首页自由搭建,无需写代码。
ShopXO 兼容层
提供 /api.php 风格兼容入口,已实现 82 个 s= 动作。社区维护的 shopxo-uniapp 小程序可以直接对接,改个接口地址就能用。
和 ShopXO 的关系
GoShop 是独立编写的 Go 后端,不是 ShopXO 的 fork。对照 ShopXO v6.8.0 做数据模型和商家主路径的对齐,目的是让熟悉 ShopXO 的团队能低成本迁移。DIY 和 Form 编辑器复用了 ShopXO 官方的 MIT 开源子项目。
不做的事情:PHP 插件运行时、在线插件市场、在线升级。管理端应用商店 Tab 仅为兼容占位。
快速体验
本地启动只需三步:
git clone https://github.com/zhangpanda/goshop.git
cd goshop && cp config.yaml.example config.yaml
go build -o bin/goshop cmd/server/main.go && ./bin/goshop
首次启动自动建表、创建管理员(admin/admin123)、填充示例数据。
管理后台 cd admin && npm run dev,PC 前台 cd web && npm run dev。
开源地址
GitHub:github.com/zhangpanda/goshop
欢迎 Star ⭐ 和 PR。