Skills2026年4月10日·1 分钟阅读

Vendure — Open Source Headless E-Commerce Framework

Vendure is a headless commerce framework built with TypeScript, NestJS, and GraphQL. Extensible plugin system, multi-channel support, and full API-first architecture.

Agent 就绪

Agent 可直接安装

这个资产可安装;Agent 先选择当前运行时、检查安装计划,再运行匹配命令。

Native · 98/100策略:允许
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Established
入口
step-1.md
直接安装命令
npx -y tokrepo@latest install 6123e157-349e-11f1-9bc6-00163e2b0d79 --target codex

先 dry-run 确认安装计划,再运行此命令。

TL;DR
Vendure provides a plugin-based, API-first e-commerce backend using TypeScript, NestJS, and GraphQL.
§01

What it is

Vendure is an open-source headless commerce framework built with TypeScript, NestJS, and GraphQL. It provides the full backend for e-commerce: products, orders, payments, fulfillment, shipping, and tax, exposed through a GraphQL API so any frontend can consume it.

Vendure targets developers and teams building custom storefronts with React, Next.js, Vue, or any frontend framework who need a flexible commerce engine without vendor lock-in.

§02

How it saves time or tokens

Vendure removes the need to build commerce primitives from scratch. Its plugin system means you add payment gateways (Stripe, PayPal, Mollie), search (Elasticsearch), and custom business logic without modifying core code. The Admin UI ships ready-made, so back-office operations work on day one. Multi-channel support lets you run web, mobile, and POS from a single backend instance.

§03

How to use

  1. Scaffold a new project with the CLI:
npx @vendure/create my-shop
cd my-shop
npm run dev
  1. Open the admin panel at http://localhost:3000/admin and log in with superadmin / superadmin.
  1. Configure products, shipping methods, and payment integrations through the admin UI or programmatically via the GraphQL API.
§04

Example

Querying products from the storefront GraphQL API:

query {
  products(options: { take: 10 }) {
    items {
      id
      name
      slug
      variants {
        price
        currencyCode
        stockLevel
      }
      featuredAsset {
        preview
      }
    }
  }
}

Creating a custom plugin:

import { VendurePlugin, PluginCommonModule } from '@vendure/core';

@VendurePlugin({
  imports: [PluginCommonModule],
  providers: [],
  configuration: config => {
    // modify server config here
    return config;
  },
})
export class MyCustomPlugin {}
§05

Related on TokRepo

§06

Common pitfalls

  • Running npx @vendure/create without Node 18+ causes silent failures in dependency resolution
  • Vendure uses TypeORM under the hood; complex queries may need raw SQL or custom resolvers instead of relying solely on the built-in list queries
  • The default SQLite database is for development only; production deployments should use PostgreSQL or MySQL for data integrity and performance

常见问题

What databases does Vendure support?+

Vendure uses TypeORM and officially supports PostgreSQL, MySQL, MariaDB, and SQLite. PostgreSQL is the recommended choice for production. SQLite ships as the default for quick local development but should not be used in production.

Can I use Vendure with Next.js or Nuxt?+

Yes. Vendure is headless and exposes a GraphQL API. Any frontend framework can consume it. The Vendure docs include starter projects for Next.js, Remix, and Angular. Vue/Nuxt integrations work through standard GraphQL clients like Apollo or urql.

How does the plugin system work?+

Plugins are NestJS modules decorated with @VendurePlugin. They can extend the GraphQL schema, add custom entities, register event handlers, and modify server configuration. Vendure ships official plugins for Elasticsearch, Stellate, and various payment providers.

Is Vendure suitable for multi-vendor marketplaces?+

Vendure supports multi-channel out of the box, which lets you run separate storefronts from one backend. For true multi-vendor marketplaces with independent seller accounts, you would need custom plugin development on top of the channel system.

How does Vendure handle payments?+

Vendure uses a PaymentMethod abstraction with handler functions. Official integrations exist for Stripe, PayPal, Mollie, and Braintree. You implement a PaymentMethodHandler interface to add any custom gateway, handling creation, settlement, and refund lifecycle hooks.

引用来源 (3)
  • Vendure GitHub— Vendure is built with TypeScript, NestJS, and GraphQL
  • Vendure Docs— Vendure plugin architecture based on NestJS modules
  • Vendure Docs— GraphQL API for storefront and admin operations
🙏

来源与感谢

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产