Saleor:23K Star 的开源电商平台,GraphQL 原生设计

saleor 在 GitHub 上已经拿到 23,010 Star 了。

这个项目专门干一件事——提供一个纯 API 驱动的电商后端。不用模板引擎,不绑定前端框架,所有交互都通过 GraphQL 完成。

正文顶部截图

1、 这玩意儿是干嘛的

一句话:给开发者一个不挑技术栈的电商后端。

传统的电商平台像 Magento、WooCommerce,绑定了特定语言和框架。你用 Python 写后端,前端就得跟着用 PHP 模板。Saleor 不一样,它只提供 GraphQL API,前端用 React、Vue、Flutter、小程序,随便选。

多渠道管理是原生支持的。同一个后台可以管多个国家的站点,每个渠道独立配置价格、货币、库存、商品。不用写额外代码去区分。

README区域截图

2、 为什么要用 API-only 架构

传统插件系统有个问题:插件和核心代码跑在同一个进程里。一个插件出 bug,整个系统可能挂掉。升级核心版本,插件可能不兼容。

Saleor 的做法是把扩展逻辑拆出去。通过 Webhook、App、订阅查询这些机制,扩展代码独立部署,独立运行。核心挂了不影响扩展,扩展挂了不影响核心。

好处很直接:

  • 部署独立,扩展更新不用重启主服务
  • 技术栈不限,扩展用什么语言写都行
  • 调试简单,问题定位到具体服务就行
  • 可以单独给扩展加资源,不用整体扩容

3、 都有哪些功能

企业级该有的它都有:

  • 多币种、多语言、多仓库
  • 订单拆分支付、退货退款
  • 优惠券、促销规则、礼品卡
  • 支付网关编排,支持多种支付方式
  • 商品管理,支持复杂目录结构
  • SEO 友好,无头架构下完全自由控制

Dashboard 是独立项目,用 iframe 方式嵌入自定义应用。你可以用任何 Web 技术栈给 Dashboard 加功能。

4、 怎么跑起来

最快的方式是用 Docker Compose。官方文档有详细步骤,照着走就行。

如果想快速体验,可以注册 Saleor Cloud 的开发者账号,不用自己部署:

npm i -g @saleor/cli
saleor register

创建一个测试店铺:

saleor storefront create --url {your-saleor-graphql-endpoint}

官方提供了 Next.js 写的 Storefront 示例项目,TypeScript + GraphQL + Tailwind CSS,可以直接拿来改。

5、 适合什么场景

  • 需要多端适配的电商项目(Web、App、小程序共用一个后端)
  • 跨国业务,多币种多语言是硬需求
  • 团队里有多个开发者,需要并行开发不同模块
  • 对系统可用性要求高,不能接受单点故障

如果你只是给小店铺做个简单商城,传统方案可能更快。但一旦业务复杂度上来,API-only 架构的优势就显现了。

要求高,不能接受单点故障

如果你只是给小店铺做个简单商城,传统方案可能更快。但一旦业务复杂度上来,API-only 架构的优势就显现了。

Logo

电商企业物流数字化转型必备!快递鸟 API 接口,72 小时快速完成物流系统集成。全流程实战1V1指导,营造开放的API技术生态圈。

更多推荐