Det öppna projektet MedusaGo har publicerats, vilket utvecklar serverimplementeringen av plattformen för att skapa e-handelsbutiker Medusa pÄ Go-sprÄket (den ursprungliga Medusa-plattformen Àr skriven i TypeScript och körs pÄ Node.js). MedusaGo Àr kompatibel med Medusa v2 pÄ API-nivÄ (grundversion 2.22.4), sÄ den inbyggda Medusa-administrationspanelen, biblioteket @medusajs/js-sdk och befintliga butiker fungerar med det utan Àndringar. Koden distribueras under MIT-licensen.
MedusaGo anvÀnder samma databasstruktur för PostgreSQL som Medusa, sÄ det kan köras ovanpÄ databasen för en redan fungerande butik pÄ Node.js. à tergÄng Àr ocksÄ möjlig. Endast Go 1.26+, PostgreSQL och, om sÄ önskas, Redis krÀvs som beroenden. Node.js krÀvs bara för butiken pÄ Next.js och för att anpassa administrationspanelen. Komponenterna i Enterprise Edition (RBAC, SSO) ingÄr inte i projektet. Kompatibilitet har verifierats med över 2600 inspelade förfrÄgningar i 96 scenarier som skickas till bÄda implementeringarna, varefter svarskoder, rubriker, cookies och svarskroppar jÀmförs byte för byte, databasinnehÄllet jÀmförs och modulerna och frÄga-lagets beteende kontrolleras.
Repository-strukturen speglar Medusa-monorepositoryt: varje fil route.ts motsvarar route.go. Moduler för katalog, kundvagn, bestÀllningar, betalningar, priser, kampanjer, lager, leverans, skatter, autentisering och andra har portats, liksom workflow-motorn (in-memory och pÄ Redis). Projektet innehÄller för nÀrvarande cirka 1400 filer och 177 000 rader kod i Go. De ursprungliga JavaScript-paketen (administrationspanel, designsystem, js-sdk) synkroniseras med upstream utan Àndringar. För att skapa ett nytt projekt erbjuds verktyget create-medusago-app, som liknar verktyget create-medusa-app. CLI-kommandona speglar Medusa.
KĂ€lla: opennet.ru
