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.
Installation agent prête
Cet actif peut être installé après choix du runtime, vérification du plan et exécution de la commande adaptée.
npx -y tokrepo@latest install 6123e157-349e-11f1-9bc6-00163e2b0d79 --target codexÀ exécuter après confirmation du plan en dry-run.
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.
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.
How to use
- Scaffold a new project with the CLI:
npx @vendure/create my-shop
cd my-shop
npm run dev
- Open the admin panel at
http://localhost:3000/adminand log in withsuperadmin/superadmin.
- Configure products, shipping methods, and payment integrations through the admin UI or programmatically via the GraphQL API.
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 {}
Related on TokRepo
- API development tools — tools for building and testing API-first backends
- Coding tools for developers — broader developer tooling category
Common pitfalls
- Running
npx @vendure/createwithout 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
Questions fréquentes
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.
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.
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.
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.
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.
Sources citées (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
En lien sur TokRepo
Source et remerciements
- GitHub: vendure-ecommerce/vendure — 8K+ ⭐
- Website: vendure.io
Fil de discussion
Actifs similaires
Medusa — Open Source Headless Commerce Engine
Medusa is an open-source composable commerce engine built with Node.js. Modular architecture, REST & JS SDK, and full customization for building custom storefronts and commerce flows.
Payload CMS — Open Source Fullstack Next.js Headless CMS
Payload is the open-source headless CMS and app framework built on Next.js. TypeScript-first, code-configured, with instant admin panel, auth, and file uploads.
Webstudio — Open Source Visual Website Builder
Webstudio is an open-source Webflow alternative with a visual drag-and-drop editor, full CSS support, headless CMS integration, and self-hosting on Cloudflare.
Strapi — Leading Open Source Headless CMS
Strapi is the most popular open-source headless CMS with 71K+ stars. Visual content-type builder, REST & GraphQL APIs, RBAC, and extensive plugin marketplace.