We're excited to announce a new plugin that provides developers with a better way to manage and deploy Admin for Medusa stores.
This plugin introduces a new approach for shipping the dashboard and lays the groundwork for other product improvements planned for Admin later this year. Specifically, we plan to support admin extensibility, essential for enabling developers to build rich commerce applications. With the ability to extend the admin UI with plugins and extensions, developers will be able to create solutions that meet their end-to-end use cases.
Although admin extensibility is still in development, this initial step provides developers with more options and improves the developer experience of deploying and maintaining Admin.
Seamless Updates
With the move to distributing Medusa’s Admin through Copy to clipboardnpm
we will also ensure that Medusa Admin is versioned. Prior to this release, the dashboard was available through a GitHub repository, and users must keep up with the latest changes. This has sometimes led to version mismatches and incompatibilities between the UI and server.
With the new introduction of admin as an NPM package, users can update their admin with a single command. The plugin's versioning follows major and minor updates to the Medusa core, ensuring users can update their admin without worrying about compatibility issues.
Flexible Deployment Options
Developers have two options for deploying Admin using the plugin. They can either integrate it as a part of their server, where the dashboard is directly served from an endpoint, or they can use the plugin as a build tool and deploy the dashboard to a hosting service such as Vercel.
Users can also combine both options. They can use integrated hosting while in development to have a simple development environment when building with Medusa. Later, they can opt for deploying to an external host in production to leverage modern infrastructure tools.
An Integrated Part of Your Store
Medusa’s mission is to equip developers with the necessary tools to create robust commerce applications. Medusa's extensible core makes this possible. With this plugin, we're bringing Admin closer to the core. This opens the door to many new, exciting possibilities, including allowing developers to create admin extensions directly from their server directory or through plugins. This will give plugin maintainers the ability to create end-to-end extensions. We're currently in the process of creating a new Extensions API, and we'll share more on this soon.
Trying it Out
As mentioned, the plugin provides developers with two options for deployment. In this section, we will cover how to host Admin as an integrated part of your server. For information on deploying Admin to an external host, please refer to our [documentation].
Installing the Plugin
To install the plugin, use your preferred package manager:
1yarn add @medusajs/admin
Then configure it in Copy to clipboardmedusa-config.js
:
1234const plugins = [// ..."@medusajs/admin"];
In Copy to clipboardpackage.json
we need to add a new script to build the dashboard:
1234"scripts": {// ..."build:admin": "medusa-admin build"}
We can now build Admin and start up our server
12yarn build:adminyarn start
The dashboard can now be accessed from your browser. If you run Medusa on the default port, the URL is ``.
What's next?
We have several exciting improvements planned for the Admin in the coming months. Currently, we are improving our design system and will ship a new component library to go along with it. Our goals are to enhance the overall look and feel of the dashboard and its responsiveness, and to introduce a new dark mode theme. The new component library will be open-sourced, and we hope developers will find it useful when creating admin extensions once the Extensions API is released later this year.
For a full overview of what we have planned for Admin and Medusa, you can read more on our GitHub discussions page. We would love to hear any feedback and ideas you might have for the next features we are working on, so please do not hesitate to share them with us.
You can learn more about the admin plugin in our documentation.