Medusa: A New Way to Build Commerce
Tags: opensource, news, webdev, javascript
Published: 2023-04-04 17:57:23

I am very excited to share an update to our website and announce our v1.8 release that came out today.

Medusa is a new way to build commerce, and our updated website and the release clarifies this with a sleek new design and powerful new features.

We build tools and modules that run in new, modern environments and make it easy for developers to create unique experiences.

Visit [our new website](https://medusajs.com/readme/) to read about why we started Medusa and where we are headed.

Check out our [Recap page on our website](https://medusajs.com/recap/) to get a peak of all the cool new features we put out in 1.8. This post also highlights some of those features.

## Multi-Warehouse

<video controls preload="none" style="object-fit: cover;" poster="https://medusajs.com/images/fulfillment-video-cover.png">
<source src="https://medusajs.com/videos/fulfillment.mp4" type="video/mp4" />
</video>

The Multi-Warehouse feature allows businesses to manage their inventory across multiple locations and sales channels, reserving items in orders that aren’t fulfilled yet, choose where to fulfill items from and where to return items to, and more!

Learn more about Multi-Warehouse in the [product announcement](https://medusajs.com/blog/announcing-multi-warehouse/).

## Product Categories

<video controls preload="none" style="object-fit: cover;" poster="https://medusajs.com/images/product-categories-video-cover.png">
<source src="https://medusajs.com/videos/product-categories.mp4" type="video/mp4" />
</video>

The Product Categories feature allows businesses to organize their products in categories of unlimited hierarchy. This improves product organization and allows customers to find products more easily.

Learn more about Product Categories in the [product announcement](https://medusajs.com/blog/announcing-product-categories/).

## Admin Plugin

We previously shipped the Medusa admin in an isolated GitHub repository. This caused a lot of issues related to updating and extending it.

So, we now ship the Medusa admin as an NPM package that can be installed as a plugin on the Medusa backend. This ensures that the admin now follows versioning similar to the Medusa core, and opens new potentials into its development and deployment.

Learn more about the Admin Plugin in the [product announcement](https://medusajs.com/blog/announcing-admin-plugin).

## Modules

The Modules API gives developers more customization capabilities, allowing them to change how commerce features, or core logic is implemented. The Multi-warehouse feature is actually composed of two modules: inventory and stock location. Another example of modules are the cache and event bus modules.

You can learn more about Modules in the [product announcement](https://medusajs.com/blog/announcing-modules/).

## Cache Module

The cache module is used to temporarily store or cache data such as product prices and tax rates.

As the cache functionality is handled with a module, developers have the freedom to choose whichever third-party service or logic they used to handle caching. Medusa also provides two cache modules: local cache and Redis cache modules.

You can learn more about Cache Modules in the [product announcement](https://medusajs.com/blog/announcing-cache-modules/).

## Event Bus Module

Medusa previously required using Redis for its event system. In this new release, the event system has been refactored to instead use an event bus module to handle the messaging system in Medusa.

Developers can create their own module to integrate their preferred third-party pub/sub service or custom logic. Medusa also provides two event bus modules: a local event bus module and a Redis event bus module.

You can learn more about the Event Bus Module in the [product announcement](https://medusajs.com/blog/announcing-event-bus-modules/).

## Transaction Orchestrator

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hnanuiokjsu2229z258d.gif)

Transaction Orchestrator is a new feature in Medusa that allows handing transactions in an increasingly complex system and environment. This feature is a huge leap for Medusa to become more composable and robust, and it opened the door for the introduction and usage of modules.

You can learn more about the Transaction Orchestrator in the [product announcement](https://medusajs.com/blog/announcing-transaction-orchestrator/).

## OAS Codegen Tools

At Medusa, we use OpenApi Spec (OAS) to generate SDKs and automate documentation, among other features. The new OAS tool allows developers to generate their own OAS files and TypeScript client types from their Medusa backend.

You can learn more about OAS Codegen Tools in the [product announcement](https://medusajs.com/blog/announcing-openapi-spec-codegen-tool/).

## New Documentation

As mentioned in the beginning of this article, Medusa’s main goal has always been to provide the best developer experience. An essential part of that is constantly ensuring that we’re providing a reliable documentation with good user experience.

Earlier this month we’ve launched a new documentation with a new structure and design. You can learn more about the process behind that in the [product announcement](https://medusajs.com/blog/announcing-medusa-new-documentation/).

## Interested in Learning More about Medusa?

If you’re interested in Medusa’s vision, and you want to learn more about it, check out our [website](https://medusajs.com/) for all the information you need. You can also refer to our GitHub Discussions to learn more about our [Roadmap](https://github.com/medusajs/medusa/discussions/categories/roadmap) or give us any feedback you have. In addition, you can join our [Discord](https://discord.gg/medusajs) and be part of our community.