MedusaGo Project Has Prepared An Implementation Of Medusa E-commerce Platform In Go Language

Published open project MedusaGo, developing the implementation of the server part of the platform for creating online stores Medusa in the Go language (the original Medusa platform is written in TypeScript and runs on Node.js). MedusaGo is compatible with Medusa v2 at the API level (base version 2.22.4), so the native Medusa control panel, @medusajs/js-sdk library and existing storefronts work with it without changes. The code is distributed under the MIT license.

MedusaGo uses the same PostgreSQL database schema as Medusa, so it can be run on top of the database of an already running Node.js store. The reverse transition is also possible. The only dependencies needed are Go 1.26+, PostgreSQL and, if desired, Redis. Node.js is required only for the Next.js storefront and for finalizing the admin panel. Enterprise Edition components (RBAC, SSO) are not included in the project. Compatibility is tested using more than 2,600 recorded queries in 96 scripts that are sent to both implementations, after which response codes, headers, cookies and response bodies are compared byte-by-byte, database contents are compared, and the behavior of modules and the Query layer is checked.

The repository structure follows the Medusa monorepository: each route.ts file corresponds to a route.go. The catalog, cart, orders, payments, prices, promotions, warehouses, delivery, taxes, authorization and others modules, as well as the workflow engine (in-memory and on Redis), have been ported. Currently the project has about 1,400 files and 177 thousand lines of Go code. Source JavaScript packages (admin panel, design system, js-sdk) are synchronized with upstream without changes. To create a new project, the create-medusago-app utility is offered, similar to the create-medusa-app utility. The CLI commands are the same as Medusa.

/Reports, release notes, official announcements.