37,153
stars
+17+94
5,501
forks
200
watchers
12,199
prs
4,130
issues
173
releases
1,300
discussions
README
Medusa
Documentation |
Website
Building blocks for digital commerce
Medusa is an open-source commerce platform with a built-in framework for customization. Use it to build B2B or DTC stores, marketplaces, distributor platforms, PoS systems, and other applications that need commerce primitives such as products, carts, orders, and payments, without reinventing core commerce logic.
Getting Started
The fastest way to get started is with Medusa Cloud, a managed environment for Medusa applications with automated deployments, scaling, and maintenance. Get started on Medusa Cloud.
To create a Medusa application locally, you need Node.js v22.22.0 or later and a running PostgreSQL database. Then run:
bash
npx create-medusa-app@latest my-medusa-store
This sets up the Medusa server and admin dashboard, and optionally the Next.js Starter Storefront. See the installation guide for all options, or install with Docker.
Repository structure
This is a Yarn workspaces monorepo. Every Medusa package published to npm lives under packages.
| Path | Contents |
| --- | --- |
| packages/medusa | @medusajs/medusa: the main package installed in Medusa applications. Holds the Store and Admin API routes, CLI commands, subscribers, and jobs, and re-exports the modules and @medusajs/core-flows. |
| packages/core/ | Core libraries: the framework runtime (framework), types, utils, Workflows SDK, Modules SDK, predefined workflows (core-flows), Query, orchestration, and the JS SDK. |
| packages/modules/ | Commerce Modules (product, cart, order, pricing, payment, and more) and Infrastructure Modules (event bus, caching, file, locking, workflow engine, and more). |
| packages/modules/providers/ | Module Providers, such as Stripe payments, S3 file storage, SendGrid notifications, Redis locking and caching, and auth providers for email/password, GitHub, Google, and OIDC. |
| packages/admin/ | The Medusa Admin dashboard and the SDK, Vite plugin, and bundler used to build and extend it. |
| packages/design-system/ | Medusa UI: the React component library, icons, Tailwind preset, and a Figma import tool. |
| packages/cli/ | CLI tools: create-medusa-app, the medusa CLI, OpenAPI tooling, and the HTTP types generator. |
| packages/plugins/ | Official plugins, such as draft orders and loyalty. |
| integration-tests | HTTP and module integration test suites run against a real PostgreSQL database. |
| www | The source of the Medusa documentation website. |
About Medusa
Medusa's commerce modules are open-source and freely available on npm. Enterprise Edition features are identified separately in the repository.
Learn more about Medusa's architecture and Commerce Modules in the documentation.
Upgrades & Integrations
Follow the Release Notes to keep your Medusa project up-to-date.
Check out all available Medusa integrations.
Community & Contributions
The core team is available in GitHub Discussions, where you can crTop issues
#8548Deleting an image does not trigger the delete method of AbstractFileProviderService79 comments · 2024-08-11#14106[Bug]: Draft Orders | It is not possible to add an variant if it is not available in stock.26 comments · 2025-11-22#17069[Bug]: Promotion edit form silently swallows server errors (no toast, no message)13 comments · 2026-09-29#16487[Bug]: `medusa plugin:build` does not resolve TypeScript path aliases in admin extensions13 comments · 2026-08-19#16569[Bug]: Concurrent createReservationItems calls can oversubscribe stock and desynchronize reserved_quantity12 comments · 2026-08-23#16474[Bug]: Caching module invalidation is unbounded and runs on `worker_mode: server` processes, OOMing the API container under bulk writes12 comments · 2026-08-17#15994[Bug]: Price list `min_quantity` tiered price not applied to cart line item when an override base price exists11 comments · 2026-07-10#16535[Bug]: custom path aliases breaks plugin dev hot reload10 comments · 2026-08-21
Discussions
#17664Canary Islands IC to defaultCountries0 comments · 2026-11-04#17601Add Hindi (hi) translation to the admin dashboard0 comments · 2026-11-01#17578# Feature Request: Native Cloudflare Workers Support0 comments · 2026-10-29#17560Allow extending or replacing individual elements of built-in admin sections0 comments · 2026-10-28#17539Supported way to update or remove a fulfillment's delivery address (for data-deletion requests)0 comments · 2026-10-27#17512Scento: a production Medusa 2 store, plus two lessons from raw SQL and migrations0 comments · 2026-10-25#17501How Rivarc would deploy Medusa v2 without code changes: 4 quick questions1 comments · 2026-10-24#17476loyalty-plugin: let the application opt out of the plugin's core workflow hooks, and export its order workflows0 comments · 2026-10-23
Latest release
v2.22.4: TypeScript 7 Support, Dashboard Fixes, Security Updates v2.22.4 2026-11-06Highlights TypeScript 7 Support Medusa's framework and CLI now support TypeScript 7 in applications and plugins. If you use TypeScript 7, make sure to also install @typescript/typescript6 as TypeScript 7 still doesn't support JavaScript APIs: bash yarn add -D typescript@7 @typescript/typescript6 17660 --- Features feat(test-utils): add a Jest preset for Medusa applications and plugins by @shahednasser in 17673 feat(framework,cli): support TypeScript 7 in Medusa applications and plugins by @shahednasser in 17660 Bugs fix(dashboard): keep list filters a