-
Notifications
You must be signed in to change notification settings - Fork 321
Description
Summary
We are redesigning Mercur from a template-based solution into a modular marketplace platform built on top of the Medusa core.
The current architecture bundles a large amount of marketplace logic directly into the project template. This results in unused code, difficult customization, and slower long-term evolution.
This initiative introduces a clearer separation between core marketplace concepts and optional marketplace functionality.
Motivation
As Mercur grows, the template-based architecture makes it harder to:
- customize behavior without modifying core logic
- support different marketplace models from the same codebase
- evolve the platform without accumulating technical debt
To address these limitations, Mercur needs a smaller, more stable core and a modular extension model.
Scope
This initiative introduces a new architectural model where:
- Mercur is provided as a small core plugin
- the core defines abstract marketplace concepts and shared primitives
- optional marketplace functionality is encapsulated in reusable blocks
- blocks are discovered, installed, and maintained via registries
- developers compose marketplaces by adding only the blocks they need
(e.g. reviews, requests, custom order flows)
Mercur continues to rely on Medusa as the underlying commerce engine.
Impact
- Developers can build different marketplace types without carrying unused logic
- Integrators gain clearer extension points and safer customization
- The platform becomes easier to maintain and evolve long-term
This initiative introduces breaking changes and does not aim to preserve compatibility with existing Mercur versions.
Relationship to the Roadmap
This initiative is tracked on the public Mercur roadmap.
Current status: In Progress
Feedback & Discussion
This issue is intended for high-level architectural discussion and feedback.
Implementation details and task-level work are tracked internally and are intentionally out of scope for this issue.