Explained in 5 Levels of Difficulty: Ecommerce by Medusa
Tags: opensource, javascript, webdev, programming
Published: 2022-09-27 11:00:29

At [Medusa](https://github.com/medusajs/medusa), we often write articles where we try to explain how to do different tasks with Medusa, or how it compares with other platforms like Shopify.

But what is Medusa, really?

Whether you’re a child that somehow stumbled here, you’re an expert developer interested in learning about new technologies, or anything in between, this article explains what Medusa is and why to use it based on your level of experience.

## Explained to a Child 👶

Remember when your parents bought you a lego set just using their phone? They used an online store where you can browse for different toys, buy them online, and have them shipped right to your door.

These online stores are created using tools like Medusa. Medusa allows store owners to create online stores that are later used to buy different items, such as a lego set.

## Explained to a Teen 👧

Ecommerce online stores allow store owners to showcase their products to their customers. The customers then can buy some of these products using different payment methods, such as Stripe or PayPal, then have these items shipped to their door using the shipping method of their choice.

For store owners to create an ecommerce store, they generally need an ecommerce platform that builds the basics for them, such as creating products, storing customer information and handling products.

Medusa is an ecommerce platform that was built for software developers. It is a free platform that can be used for any type of ecommerce store, and it can be customized with different options to make the customer’s experience more unique.

## Explained to a College Graduate 👩‍🎓

Ecommerce platforms power up all ecommerce online stores that we see today. Medusa is one of those platforms, but a few characteristics sets it apart:

- **Open Source:** A software that is open source is a software that is open to the public. Anyone can check the code at any time, and anyone can use it for their projects for free. It can be used as-is, or it can be modified for different purposes as every line of code can be changed.
- **Easy-to-use:** Medusa’s [intuitive admin panel](https://docs.medusajs.com/user-guide/) makes it easy for store owners to customize their store and perform advanced tasks such as handling order returns and exchanges.
- **Flexibility:** Medusa does not force store operators or developers to use a set of services that they do not need. If a store operator can benefit from using Stripe, they can use it as a payment method for their store. If they instead prefer using PayPal, they can use that instead. They can also use both! There are no limitations to the services that can be used in Medusa.

## Explained to an Intern Developer 🙍‍♀️

Medusa is an open source Node.js ecommerce platform that aims to provide a great developer experience. Whether you’re a beginner or an expert, you can use Medusa if you have some knowledge of JavaScript or TypeScript.

Medusa is easy to get started with. All you need is to follow [three steps to get started with Medusa](https://docs.medusajs.com/quickstart/quick-start) and set up your first online store.

Medusa’s open source nature makes it highly flexible and customizable. You can use it to build a traditional ecommerce store or more advanced business models such as subscription-based ecommerce stores.

Medusa also provides storefronts built with [Gatsby](https://docs.medusajs.com/starters/gatsby-medusa-starter) and [Next.js](https://docs.medusajs.com/starters/nextjs-medusa-starter), which are open source static-site generators that make your ecommerce website blazingly fast.

[Medusa’s Discord community](https://discord.gg/medusajs) is welcoming to all developers of different levels that are interested in learning more about Medusa and want to receive help during the process. The [GitHub repository](https://github.com/medusajs/medusa) can also be used to submit any issues or participate in discussions.

## Explained to an Expert Developer 🦸‍♀️

Medusa is an open source composable commerce platform built with Node.js. Its main purpose is to provide a great developer experience that allows developers to build any type of ecommerce solution without hacky workarounds.

Medusa’s architecture is composed of three components:

- **The backend** is the core of the ecommerce store. This is where all data and processing logic is stored. Other components in the architecture interact with the backend to perform any ecommerce operation or retrieve the store’s data.
- **The storefront** is what customers use to buy products from the ecommerce store. Medusa provides two storefronts, one built with [Gatsby](https://docs.medusajs.com/starters/gatsby-medusa-starter) and one with [Next.js](https://docs.medusajs.com/starters/nextjs-medusa-starter). You can also build your own storefront with any frontend framework by using the [Storefront APIs](https://docs.medusajs.com/api/store).
- **The Medusa admin** is an intuitive admin panel that can be used by store operators to manage their ecommerce store. Store operators can manage products, orders, discounts, and more features that the ecommerce store provides. You can either use [Medusa’s admin panel](https://docs.medusajs.com/admin/quickstart) or build your own using the [Admin APIs](https://docs.medusajs.com/api/admin/).

As an ecommerce platform, Medusa provides many advanced features on top of the basic ecommerce features, including automated RMA flows, Sales Channels, Automated tax calculation, and [more](https://docs.medusajs.com/#features).

The Medusa server’s architecture is built with abstract layers that allow you to extend any part of the server to provide additional services seamlessly. Medusa can also be integrated with any third-party services hassle-free using its plugin system.

Some of the existing plugins to integrate Medusa into third-party services are [Stripe](https://docs.medusajs.com/add-plugins/stripe), [Contentful](https://docs.medusajs.com/add-plugins/contentful/), [Algolia](https://docs.medusajs.com/add-plugins/algolia), [Slack](https://docs.medusajs.com/add-plugins/slack), and more. You can also [create your own plugin](https://docs.medusajs.com/advanced/backend/plugins/create) to use on your server or share it with the community.

## Want to Learn More About Medusa?

If you’re interested in getting started with Medusa, check out our [quickstart guide to get started in three easy steps](https://github.com/medusajs/medusa#install-locally).

You can learn more about Medusa and how to use it in our [Documentation](https://docs.medusajs.com/).

If you need any help while using Medusa or just want to chat with the core team behind Medusa and the community, please join our [Discord server](https://discord.gg/medusajs).