-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: revise architectural modules documentation
- Loading branch information
1 parent
fd77809
commit 9acd0f7
Showing
6 changed files
with
196 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,179 @@ | ||
import { ChildDocs } from "docs-ui" | ||
import { ChildDocs, CardList } from "docs-ui" | ||
|
||
export const metadata = { | ||
title: `Architectural Modules`, | ||
} | ||
|
||
# {metadata.title} | ||
|
||
This section includes documentation for official Medusa architectural modules. | ||
Medusa's architectural functionalities, such as emitting and subscribing to events or caching data, are all implemented in architectural modules. An architectural module is a package that can be installed and used in any Medusa application. These modules allow you to choose and integrate custom services for architectural purposes. | ||
|
||
<ChildDocs hideItems={["Guides", "Overview"]} /> | ||
For example, you can use our [Redis Event Module](./event/redis/page.mdx) to handle event functionalities, or create a custom module that implements these functionalities with Memcached. Learn more about Medusa's architecture in [this documentation](!docs!/learn/introduction/architecture). | ||
|
||
This section of the documentation showcases official architectural modules and how to configure them in your application. | ||
|
||
## Cache Modules | ||
|
||
A Cache Module is used to cache the results of computations such as price selection or various tax calculations. Learn more in [this documentation](./cache/page.mdx). | ||
|
||
The following modules are provided by Medusa. You can also create your own cache module as explained in [this guide](./cache/create/page.mdx). | ||
|
||
<CardList | ||
items={[ | ||
{ | ||
title: "In-Memory", | ||
href: "/architectural-modules/cache/in-memory", | ||
badge: { | ||
variant: "neutral", | ||
children: "For Development" | ||
} | ||
}, | ||
{ | ||
title: "Redis", | ||
href: "/architectural-modules/cache/redis", | ||
badge: { | ||
variant: "green", | ||
children: "For Production" | ||
} | ||
} | ||
]} | ||
/> | ||
|
||
--- | ||
|
||
## Event Modules | ||
|
||
An Event Module implements the underlying publish/subscribe system that handles queueing events, emitting them, and executing their subscribers. Learn more in [this documentation](./event/page.mdx). | ||
|
||
The following modules are provided by Medusa. You can also create your own event module as explained in [this guide](./event/create/page.mdx). | ||
|
||
<CardList | ||
items={[ | ||
{ | ||
title: "Local", | ||
href: "/architectural-modules/event/local", | ||
badge: { | ||
variant: "neutral", | ||
children: "For Development" | ||
} | ||
}, | ||
{ | ||
title: "Redis", | ||
href: "/architectural-modules/event/redis", | ||
badge: { | ||
variant: "green", | ||
children: "For Production" | ||
} | ||
} | ||
]} | ||
/> | ||
|
||
--- | ||
|
||
## File Module Providers | ||
|
||
A file module provider implements the logic of handling uploads and downloads of assets, such as integrating third-party services. Learn more in [this documentation](./file/page.mdx). | ||
|
||
The following modules are provided by Medusa. You can also create your own file module as explained in [this guide](/references/file-provider-module). | ||
|
||
<CardList | ||
items={[ | ||
{ | ||
title: "Local", | ||
href: "/architectural-modules/file/local", | ||
badge: { | ||
variant: "neutral", | ||
children: "For Development" | ||
} | ||
}, | ||
{ | ||
title: "AWS S3 (and Compatible APIs)", | ||
href: "/architectural-modules/file/s3", | ||
badge: { | ||
variant: "green", | ||
children: "For Production" | ||
} | ||
} | ||
]} | ||
/> | ||
|
||
--- | ||
|
||
## Notification Module Providers | ||
|
||
A notification module provider implements the logic of sending notifications, typically through integrating a third-party service. Learn more in [this documentation](./notification/page.mdx). | ||
|
||
The following modules are provided by Medusa. You can also create your own file module as explained in [this guide](/references/notification-provider-module). | ||
|
||
<CardList | ||
items={[ | ||
{ | ||
title: "Local", | ||
href: "/architectural-modules/notification/local", | ||
badge: { | ||
variant: "neutral", | ||
children: "For Development" | ||
} | ||
}, | ||
{ | ||
title: "SendGrid", | ||
href: "/architectural-modules/notification/sendgrid", | ||
badge: { | ||
variant: "green", | ||
children: "For Production" | ||
} | ||
} | ||
]} | ||
/> | ||
|
||
### Notification Module Provider Guides | ||
|
||
<CardList | ||
items={[ | ||
{ | ||
title: "Send Notification", | ||
href: "/architectural-modules/notification/send-notification" | ||
}, | ||
{ | ||
title: "Create Notification Provider", | ||
href: "/references/notification-provider-module" | ||
}, | ||
{ | ||
title: "Resend", | ||
href: "/integrations/guides/resend", | ||
badge: { | ||
variant: "blue", | ||
children: "Integration" | ||
} | ||
} | ||
]} | ||
/> | ||
|
||
--- | ||
|
||
## Workflow Engine Modules | ||
|
||
Workflow engine modules handle tracking and recording the transactions and statuses of workflows and their steps. Learn more in [this documentation](./workflow-engine/page.mdx). | ||
|
||
The following modules are provided by Medusa. | ||
|
||
<CardList | ||
items={[ | ||
{ | ||
title: "In-Memory", | ||
href: "/architectural-modules/workflow-engine/in-memory", | ||
badge: { | ||
variant: "neutral", | ||
children: "For Development" | ||
} | ||
}, | ||
{ | ||
title: "Redis", | ||
href: "/architectural-modules/workflow-engine/redis", | ||
badge: { | ||
variant: "green", | ||
children: "For Production" | ||
} | ||
} | ||
]} | ||
/> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters