BigCommerce 如今提供两条一流的店面路径。Stencil 是历史悠久的托管主题平台,将 Handlebars 模板、jQuery、Bootstrap 以及 BigCommerce Storefront Cart UI 全部串联起来,让一支能干的团队在数天之内就能上线一个可用的 B2C 或 B2B 站点。Catalyst 是 BigCommerce 官方基于 Next.js 的无头参考架构,采用 TypeScript、React Server Components 与 BigCommerce GraphQL Storefront API,部署在 Vercel 或你选择的任意边缘节点上。
两者都很好,也都对某些项目并不合适。选错往往是你在这个平台上会犯的代价更高的错误之一,因为两者之间的迁移路径就是一次重建。
Stencil 真正擅长什么
Stencil 的口碑被它自带 jQuery 和 Bootstrap 这一点不公平地拖累了。人们一看到“jQuery”就认定是“老旧技术”,这是误读。Stencil 之所以自带这些,是因为对于一个可用店面所需的几十个组件而言,它们是阻力最小的路径,而且 BigCommerce 维护着围绕它们的整个框架。这不是老旧,而是通用件,这是一项优势。
以下情况 Stencil 更胜一筹:
- 上线速度比独特的用户体验更重要。 一支真正懂行的团队可以在 4–8 周内交付一个干净、性能良好的 Stencil 站点。Catalyst 站点耗时更长,因为你是在搭建界面基础组件,而不是组装现成的组件。
- 商品运营团队需要每天在 BigCommerce 里工作。 Stencil 站点能获得完整的后台编辑体验:Page Builder、Script Manager、原生搜索商品运营,以及应用生态(A/B 测试通过应用或 Script Manager 接入,而非原生功能)。在 Catalyst 上,上述每一项都需要明确决定它落在何处。
- 你没有前端平台团队。 Catalyst 是一个真正的 Next.js 项目。必须有人负责构建流水线、部署目标、图片优化预算以及依赖升级。Stencil 则由 BigCommerce 运营。
- 商品目录是首要的差异化要素。 Stencil 让你聚焦于产品与商品运营,Catalyst 让你聚焦于界面与架构。对许多 B2B 商品目录而言,前一种聚焦才是正确的。
Catalyst 真正擅长什么
Catalyst 的存在,正是为了应对 Stencil 的预设会成为阻碍的那些场景。最明显的信号是:
- 你需要一种不契合 BigCommerce 主题模型的、以品牌为主导的购物体验。 动效、自定义导航模式、内容与商务融合的混合页面、复杂的配置器,当你掌控整棵 React 组件树时,这一切都更容易实现。
- 你的店面只是共享同一套设计系统的众多触点之一。 一个网站、一个 iOS 应用、一个店内自助终端、一个销售代表工具,Catalyst 让你拥有一个能够与其余触点共用同一组件库的前端。Stencil 做不到这一点。
- 你已经拥有或正在组建平台团队。 Catalyst 会回报良好的前端工程实践,也会惩罚不具备这种实践的团队。
- 反正你早晚都会撞到 Stencil 的边界。 如果你的设计稿里已经包含了你明知需要脱离 Stencil 才能实现的东西,那就干脆直接从 Catalyst 起步。
B2B Edition 的微妙之处
BigCommerce B2B Edition(企业账户、报价、价格表、采购清单、买家角色)对两者都支持。但在 Stencil 上其集成方案更为成熟,大部分 B2B Edition 界面都通过标准主题组件接入。在 Catalyst 上,你需要自己为 B2B 接通 GraphQL Storefront API 端点,而某些界面(报价管理、代客操作)则需要更刻意的开发工作。如果 B2B Edition 是你上线的核心而团队规模又小,那就偏向 Stencil。
“无头一定更好”的惯性思维
你会听到一种说法,往往出自两者都没真正交付过的人之口:无头才是现代之道,托管主题已是老旧技术。这是一种范畴错误。无头是一种架构,现代性则是一种结果。一个人手不足、耗时 9 个月才上线的 Catalyst 项目,远不如一个运营得当、8 周就上线并持续迭代至今的 Stencil 站点来得现代。
选择 Catalyst 的诚实理由是:你需要 Stencil 给不了的渲染控制权,或者你需要与其他界面共享同一套前端代码库,又或者你拥有一支真正能从掌控技术栈中获益的团队。选择 Stencil 的诚实理由是:速度、由厂商托管的默认能力,以及一套免费附带的商品运营体验。两者都是不错的答案,只是别凭惯性去选。
我们在真实项目中如何决策
我们对一位潜在 BigCommerce 客户提出的第一个问题是:“你是否拥有、或是否已下定决心招聘一名前端平台工程师?”如果诚实的答案是没有,我们就会引导他们走向 Stencil。第二个问题是:“设计中是否有你已经见过 Stencil 站点难以应对的购物体验?”如果有,那就是一个偏向 Catalyst 的信号。第三个问题是:“B2B Edition 有多核心?”越核心,偏向 Stencil 的倾向就越大。
如果经过这一番询问后,答案确实是“我们既要速度又要自由”,那其实有一条合理的中间路径:先上线 Stencil,在它上面打造品牌与商品运营的能力,等你有了真正的理由和足以支撑的团队,再迁移到 Catalyst。我们这样做过两次。顺便说一句,两家客户至今都还在 Stencil 上,因为那个理由始终没有出现。
正在某个真实项目上权衡这个抉择吗?告诉我们你面对的情况,我们会告诉你账面上究竟该往哪边算,哪怕答案是“两个都别选,你大概应该留在原地”。