Zobrazit stránkuStarší verzeZpětné odkazyNahoru Tato stránka je pouze pro čtení. Můžete si pouze prohlédnout zdrojový kód, ale ne ho měnit. Zeptejte se správce, pokud si myslíte, že něco není v pořádku. ====== MedusaJS ====== //Vytvořeno: **20.5.2026** | Aktualizováno: **~~LASTMOD~~**// [[https://github.com/medusajs/medusa|MedusaJS / Medusa]] je open-source headless commerce platforma a framework pro stavbu vlastních e-shopů, marketplace, B2B portálů nebo jiných commerce aplikací. Není to hotové klikací řešení typu Shoptet, ale vývojářský backend s adminem, API, commerce moduly a možností hlubokých úprav. ===== Licence a pricing ===== Medusa je podle [[https://github.com/medusajs/medusa/blob/develop/LICENSE|licence v repozitáři]] vydaná pod MIT licencí. To znamená, že ji lze používat i komerčně, upravovat, self-hostovat a stavět na ní vlastní produkt. Základní povinnost je zachovat licenční a copyright oznámení u distribuovaných částí softwaru. [[https://medusajs.com/pricing/|Pricing Medusy]] se netýká licence k open-source kódu, ale hlavně služby Medusa Cloud. Podle pricing stránky nejde o poplatek z obratu -- Medusa uvádí 0 % GMV fee, unlimited orders, products, sales channels a regions/currencies. Platí se za infrastrukturu a provozní služby. Medusa Cloud podle [[https://docs.medusajs.com/cloud|dokumentace ke Cloudu]] řeší hlavně: * hosting backendu, adminu a storefrontu, * managed PostgreSQL, Redis a S3/object storage, * deploye z GitHubu, * preview prostředí pro pull requesty, * automatické zálohy, * zero-downtime deployment, * autoscaling, * logy a monitoring, * Medusa Cache, * transactional emails, * podporu podle tarifu. Prakticky to znamená: open-source Medusu lze provozovat zdarma na vlastní infrastruktuře, ale Medusa Cloud dává smysl ve chvíli, kdy je důležitější rychlý a stabilní provoz než správa vlastní infrastruktury. ===== Kdy dává Medusa smysl ===== Medusa se hodí pro projekty, které potřebují vlastní commerce logiku a nestačí jim běžná krabicová e-shopová platforma. Typické příklady: * vlastní checkout, * B2B portál, * marketplace, * složitější ceníky, * vlastní produktová data, * integrace s ERP, PIM, CMS nebo skladem, * netypický fulfillment, * prodej digitálních produktů, * prodej kurzů, * vlastní administrační rozhraní nad commerce daty. Naopak pro jednoduchý e-shop bez výrazné custom logiky může být Medusa zbytečně vývojově náročná. V takovém případě může být praktičtější hotová platforma, kde se většina funkcí nakliká. ===== Jak Medusa funguje ===== Podle [[https://docs.medusajs.com/learn/advanced-development/architecture/overview|architektonického přehledu]] je Medusa headless commerce platforma. Storefront, admin dashboard nebo jiný klient komunikuje s backendem přes API. Základní vrstvy aplikace: - **API Routes** -- HTTP vrstva nad Express.js, přes kterou komunikuje storefront, admin nebo vlastní klient. - **Workflows** -- vrstva byznys logiky. Workflow skládá jednotlivé kroky a může obsahovat rollback/kompenzační logiku. - **Modules** -- doménové moduly pro produkty, košík, objednávky, platby, fulfillment, zákazníky a další oblasti. - **Data store** -- typicky PostgreSQL. Redis lze použít pro cache, eventy, locky nebo workflow engine. Zjednodušeně: <code> Storefront / Admin / vlastní klient ↓ API routes ↓ Workflows ↓ Commerce modules / custom modules ↓ PostgreSQL + externí služby </code> ===== Co je připravené po instalaci ===== Podle [[https://docs.medusajs.com/learn/installation|instalační dokumentace]] se lokální projekt vytvoří příkazem: <code bash> npx create-medusa-app@latest my-medusa-store </code> Volitelně lze rovnou přidat [[https://docs.medusajs.com/resources/nextjs-starter|Next.js Starter Storefront]]: <code bash> npx create-medusa-app@latest --with-nextjs-starter </code> Po instalaci je k dispozici Medusa backend a admin dashboard. Backend běží typicky na ''http%%://%%localhost:9000'', admin na ''http%%://%%localhost:9000/app'' a Next.js storefront na ''http%%://%%localhost:8000''. V základu Medusa poskytuje commerce moduly popsané v [[https://docs.medusajs.com/resources/commerce-modules|přehledu Commerce Modules]]. Patří sem například: * produkty, * varianty produktů, * ceny, * košík, * objednávky, * zákazníci, * měny, * regiony, * sklad a inventory, * platby, * fulfillment, * slevy a promotions, * API klíče, * uživatelé, * admin dashboard. ===== Custom data a vlastní produktový model ===== Medusa má vlastní produktový model přes Product Module. Podle [[https://docs.medusajs.com/resources/commerce-modules/product|dokumentace Product Module]] produkt podporuje varianty, options, organizaci přes kategorie/kolekce/tagy a cenové strategie. Pro vlastní produktová data jsou typické dvě možnosti. ==== Rozšíření produktů v Meduse ==== První možnost je použít produktový model Medusy a doplnit vlastní data přes metadata nebo vlastní modul. Příklad pro technický e-shop: <code> Product: Baterie Pylontech US5000 Varianty: - standardní sada - sada s držákem Vlastní data: - kompatibilní měniče - kapacita - datasheet URL - záruční doba - doporučené použití </code> Medusa v takovém případě řeší commerce část: produkt, variantu, cenu, sklad, košík, objednávku a zákazníka. Vlastní modul řeší doménová data navíc. ==== Externí produktová databáze ==== Druhá možnost je mít hlavní produktová data v ERP/PIM/CMS a Medusu používat jako commerce vrstvu. Vlastní workflow pak může produkty synchronizovat do Medusy nebo číst doplňková data z externího systému. ===== Workflows a custom logika ===== [[https://docs.medusajs.com/learn/fundamentals/workflows|Workflows]] jsou jedna z hlavních výhod Medusy. Workflow je série kroků, které dohromady provedou obchodní operaci. Na rozdíl od obyčejné funkce může workflow sledovat průběh kroků, definovat rollback logiku a lépe držet konzistenci při operacích přes více systémů. Příklad použití: <code> Objednávka zaplacena ↓ vytvořit přístup zákazníkovi ↓ poslat e-mail ↓ synchronizovat data do CRM </code> Pokud některý krok selže, workflow může mít kompenzační logiku pro vrácení předchozích kroků. ===== Použití pro e-shop na kurzy ===== Medusa se dá použít i pro prodej kurzů, ale je potřeba oddělit commerce část od LMS části. Medusa může řešit: * katalog kurzů, * varianty kurzů, * ceny, * slevy, * košík, * checkout, * platby, * zákaznické účty, * objednávky, * admin správu kurzů jako produktů, * automatické vytvoření přístupu po zaplacení. Sama o sobě ale není plnohodnotný LMS. Standardně neřeší lekce, sledování progresu, kvízy, certifikáty, studentskou sekci nebo ochranu videí. To je potřeba doplnit vlastním modulem, CMS/LMS integrací nebo vlastní aplikací nad Medusa API. Možná struktura pro kurz: <code> Medusa Product: title: Kurz Home Assistant pro začátečníky Varianty: - Online kurz - Online kurz + konzultace - Firemní licence pro 5 lidí Custom Course Module: Course Lesson CourseAccess LessonProgress </code> Typický tok: <code> 1. Zákazník koupí kurz. 2. Medusa vytvoří objednávku. 3. Platba se potvrdí. 4. Subscriber nebo workflow vytvoří CourseAccess. 5. Zákazník po přihlášení vidí kurz ve studentské sekci. </code> Pro jednoduchý digitální produkt existuje v dokumentaci i [[https://docs.medusajs.com/resources/recipes/digital-products|Digital Products Recipe]]. Ten ukazuje obecný princip: vlastní modul pro digitální produkt, propojení s produktovou variantou, uložení souborů přes File Module, admin rozhraní a doručení zákazníkovi po nákupu. Kurz se dá tímto způsobem pojmout jako digitální produkt nebo jako produkt napojený na vlastní kurzový modul. ===== Kdy použít self-hosting a kdy Medusa Cloud ===== Self-hosting dává smysl hlavně ve fázi prototypu nebo pokud je k dispozici člověk, který zvládne provoz Node.js aplikace, PostgreSQL, Redis, storage, zálohy, deployment a monitoring. Medusa Cloud dává větší smysl, pokud: * projekt má jít rychle do produkce, * nechceš řešit DevOps, * je potřeba stabilní deployment z GitHubu, * hodí se preview prostředí pro pull requesty, * jsou důležité zálohy a zero-downtime deploy, * klient platí za provozní jistotu víc než za nejlevnější VPS. Pro první produkční projekt v Meduse vypadá jako rozumný minimální tarif spíš Launch než Develop, protože obsahuje custom storefront domains, automatické backupy, autoscaling a zero-downtime deployment. Develop je vhodnější pro vývoj a ověření technologie. ===== Doporučený ověřovací postup ===== Než se Medusa použije jako základ reálného e-shopu, je vhodné udělat malý proof of concept: - Rozjet Medusu lokálně se starter storefrontem. - V adminu vytvořit několik reálných produktů nebo kurzů. - Otestovat varianty, ceny, regiony, košík a checkout. - Přidat jednoduchý custom modul, například ''Course'' nebo ''TechnicalSpec''. - Propojit custom model s produktem nebo variantou. - Vytvořit workflow po zaplacení objednávky. - Rozhodnout, jestli vývojový model Medusy sedí projektu i týmu. Pro kurzový projekt by minimální MVP mohlo vypadat takto: <code> Medusa: - katalog kurzů - checkout - platby - objednávky Custom část: - Course - Lesson - CourseAccess - jednoduchá studentská sekce Externí služby: - Stripe nebo jiný payment provider - video hosting - e-mailový provider </code> ===== Shrnutí ===== MedusaJS je vhodná volba, pokud má být e-shop spíš vlastní commerce platforma než jednoduchý naklikaný obchod. Open-source MIT licence umožňuje self-hosting i komerční použití bez licenčního poplatku z obratu. Placený Medusa Cloud řeší hlavně infrastrukturu, deploye, zálohy, scaling a provozní pohodlí. Pro e-shop na kurzy je Medusa použitelná jako commerce backend. Prodej, platby, objednávky a zákazníky zvládne dobře, ale kurzovou část typu lekce, progres a studentská sekce je potřeba doplnit vlastním modulem nebo napojit na LMS/CMS. ===== Zdroje ===== * [[https://github.com/medusajs/medusa|Medusa GitHub repository]] * [[https://github.com/medusajs/medusa/blob/develop/LICENSE|Medusa licence]] * [[https://medusajs.com/pricing/|Medusa pricing]] * [[https://docs.medusajs.com/cloud|Medusa Cloud documentation]] * [[https://docs.medusajs.com/learn/advanced-development/architecture/overview|Medusa architecture overview]] * [[https://docs.medusajs.com/learn/installation|Medusa installation]] * [[https://docs.medusajs.com/resources/nextjs-starter|Next.js Starter Storefront]] * [[https://docs.medusajs.com/resources/commerce-modules|Commerce Modules]] * [[https://docs.medusajs.com/resources/commerce-modules/product|Product Module]] * [[https://docs.medusajs.com/learn/fundamentals/workflows|Workflows]] * [[https://docs.medusajs.com/resources/recipes/digital-products|Digital Products Recipe]] software/vyvoj/medusajs.txt Poslední úprava: 20.05.2026 08:09autor: Petr Nosek