@gorgo/medusa-integration 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +69 -19
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,3 +1,9 @@
1
+ <p align="center">
2
+ <a href="https://docs.gorgojs.com/integrations/integration">
3
+ <img alt="Integration Module logo" src="https://raw.githubusercontent.com/gorgojs/medusa-integrations/refs/heads/main/assets/integration-medusa-logo.svg" width="100">
4
+ </a>
5
+ </p>
6
+
1
7
  <h1 align="center">
2
8
  Integration Module for Medusa
3
9
  </h1>
@@ -5,7 +11,7 @@ Integration Module for Medusa
5
11
  <p align="center">
6
12
  <a href="https://docs.gorgojs.com/integrations/integration">Documentation</a>
7
13
  <br/>
8
- A Medusa module that lets plugins declare their settings and store admins configure them right in the Admin – no <code>medusa-config</code> edits, no redeploys.
14
+ A Medusa module that lets any plugin or provider declare its options and store admins manage them in the Admin – no <code>medusa-config</code> edits, no redeploys.
9
15
  <br/>
10
16
  <a href="https://github.com/gorgojs/medusa-integrations/blob/HEAD/packages/modules/integration/README-ru.md">Читать README на русском ↗</a>
11
17
  </p>
@@ -33,33 +39,77 @@ Integration Module for Medusa
33
39
  </a>
34
40
  </p>
35
41
 
42
+ <p align="center">
43
+ <a href="https://static.gorgojs.com/videos/integration-module/integration-module.mp4">
44
+ <img src="https://static.gorgojs.com/videos/integration-module/integration-module-preview-1776169330.webp" alt="Watch the Integration Module demo video" width="100%" style="border-radius: 8px; max-width: 720px;">
45
+ </a>
46
+ </p>
47
+
48
+ ## What is the Integration Module?
49
+
50
+ The Integration Module lets any plugin declare its options, and store admins configure them as **integrations** right in the Admin – no `medusa-config` edits, no redeploys. It generates the admin CRUD API and validation, so there are no data models, routes, or forms to write.
51
+
52
+ The Integration Module is useful for any Medusa developer building plugins, providers, or custom modules that need configurable settings, such as API keys, credentials, modes, or webhooks, but who'd rather not hand-build settings UI pages, a data layer, and validation for each one.
53
+
36
54
  ## Features
37
55
 
38
- - **No-code configuration in the Admin.** Plugin credentials and settings are managed under Settings → Integrations — no `medusa-config`/env edits and no redeploys.
39
- - **Encrypted secrets at rest.** Fields marked `secret` are encrypted (AES-256-GCM) and never reach the browser.
40
- - **Declarative descriptor** (`defineIntegration`) for plugin authors: options, sections, validation, and a connection test in one place.
41
- - **Rich option types & validation:** `string` / `url` / `email` / `uuid` / `number` / `boolean` / `enum` / `json`, per-option and cross-section rules, conditional visibility, read-only fields, i18n labels, and an icon.
42
- - **Multiple instances** of the same provider (e.g. several accounts).
43
- - **Connection test** from the Admin.
44
- - **Typed runtime resolve:** consumers read a validated, decrypted config; incomplete or disabled configs never resolve, so drafts don't leak into runtime.
45
- - **Custom admin widgets** per provider.
46
- - **Anonymous telemetry.**
56
+ - **Settings management in Admin:** Set in the **Settings → Integrations** section, no `medusa-config`/env edits and no redeploys.
57
+ - **Any plugin, provider, or module:** Works across payment, fulfillment, ERP, notification, content, and other extensions.
58
+ - **Declarative descriptor (`defineIntegration`):** A single description of the options, settings sections, validation, and connection test.
59
+ - **Flexible typing and validation:** Typed fields (`string`, `url`, `email`, `uuid`, `number`, `boolean`, `enum`, `json`) with per-option and cross-section rules, conditional visibility, and read-only fields. At runtime, the plugin gets a typed, decrypted object: incomplete or disabled settings never resolve, so an unfilled draft is never returned.
60
+ - **Encrypted secrets:** Fields marked `secret` are encrypted (AES-256-GCM) and never reach the browser.
61
+ - **Multiple instances:** The same provider can be configured more than once. For example, for several accounts in the same third-party service.
62
+ - **Connection test:** Verify credentials against the third-party service right from the Admin.
63
+ - **Extensible UI:** Sections can be reordered (LayoutComposer). If the generated sections aren't enough, you can implement any UI for your options using custom widgets.
64
+ - **Integration catalog:** Available integrations are shown in the Admin, and any plugin appears there on equal footing with the built-in ones.
65
+
66
+ ## Available Integrations
67
+
68
+ <p>
69
+ <a href="https://www.npmjs.com/package/@gorgo/medusa-fulfillment-apiship">
70
+ <img src="https://raw.githubusercontent.com/gorgojs/medusa-integrations/refs/heads/main/catalog/icons/apiship.svg" width="50" hspace="5" align="left" alt="ApiShip logo"/>
71
+ </a>
72
+ <b>ApiShip</b><br/>
73
+ Fulfillment · <a href="https://www.npmjs.com/package/@gorgo/medusa-fulfillment-apiship">@gorgo/medusa-fulfillment-apiship</a>
74
+ </p>
47
75
 
48
- ## What is the integration module?
76
+ <p>
77
+ <a href="https://www.npmjs.com/package/@gorgo/medusa-payment-tkassa">
78
+ <img src="https://raw.githubusercontent.com/gorgojs/medusa-integrations/refs/heads/main/catalog/icons/tkassa.png" width="50" hspace="5" align="left" alt="T-Kassa logo"/>
79
+ </a>
80
+ <b>T-Kassa by T-Bank</b><br/>
81
+ Payment · <a href="https://www.npmjs.com/package/@gorgo/medusa-payment-tkassa">@gorgo/medusa-payment-tkassa</a>
82
+ </p>
49
83
 
50
- Plugins need settings — API keys, modes, webhooks. Usually these live in `medusa-config`/env, which requires code access and a redeploy for every change, with secrets kept in plain text. This module moves settings into the **Admin and the database**: a store admin fills in a form, secrets are encrypted, and the consuming plugin reads the ready config at runtime. Plugin authors only **describe** the settings form — the module handles the UI, storage, encryption, and validation.
84
+ <p>
85
+ <a href="https://www.npmjs.com/package/@gorgo/medusa-payment-yookassa">
86
+ <img src="https://raw.githubusercontent.com/gorgojs/medusa-integrations/refs/heads/main/catalog/icons/yookassa.svg" width="50" hspace="5" align="left" alt="YooKassa logo"/>
87
+ </a>
88
+ <b>YooKassa</b><br/>
89
+ Payment · <a href="https://www.npmjs.com/package/@gorgo/medusa-payment-yookassa">@gorgo/medusa-payment-yookassa</a>
90
+ </p>
51
91
 
52
- ## Integrated plugins & providers
92
+ <p>
93
+ <a href="https://www.npmjs.com/package/@gorgo/medusa-payment-robokassa">
94
+ <img src="https://raw.githubusercontent.com/gorgojs/medusa-integrations/refs/heads/main/catalog/icons/robokassa.svg" width="50" hspace="5" align="left" alt="Robokassa logo"/>
95
+ </a>
96
+ <b>Robokassa</b><br/>
97
+ Payment · <a href="https://www.npmjs.com/package/@gorgo/medusa-payment-robokassa">@gorgo/medusa-payment-robokassa</a>
98
+ </p>
53
99
 
54
- | Provider | Category | `resolve` |
55
- |---|---|---|
56
- | [T-Kassa](https://docs.gorgojs.com/integrations/t-kassa) | `payment` | `@gorgo/medusa-payment-tkassa-v2/providers/integration-tkassa` |
100
+ <p>
101
+ <a href="https://www.npmjs.com/package/@gorgo/medusa-1c">
102
+ <img src="https://raw.githubusercontent.com/gorgojs/medusa-integrations/refs/heads/main/catalog/icons/1c.svg" width="50" hspace="5" align="left" alt="1C logo"/>
103
+ </a>
104
+ <b>1C:Enterprise</b><br/>
105
+ ERP · <a href="https://www.npmjs.com/package/@gorgo/medusa-1c">@gorgo/medusa-1c</a>
106
+ </p>
57
107
 
58
- Any plugin can ship an integration provider — see the [documentation](https://docs.gorgojs.com/integrations/integration).
108
+ Any plugin can use the Integration Module, see the [documentation](https://docs.gorgojs.com/medusa-modules/integration).
59
109
 
60
110
  ## 💬 Support & Community
61
111
 
62
- Got questions or ideas about the module? Join the Telegram support chat — [@gorgojs_chat](https://t.me/gorgojs_chat)
112
+ Got questions or ideas? Join the Telegram support chat — [@gorgojs_chat](https://t.me/gorgojs_chat)
63
113
 
64
114
  Connect with other Medusa developers on Telegram — [@medusajs_chat](https://t.me/medusajs_chat)
65
115
 
@@ -78,7 +128,7 @@ npm install @gorgo/medusa-integration
78
128
 
79
129
  ## Documentation
80
130
 
81
- The complete installation, configuration, and usage guide is available on the [Gorgo documentation website](https://docs.gorgojs.com/integrations/integration).
131
+ The complete installation, configuration, and usage guide is available on the [Gorgo documentation website](https://docs.gorgojs.com/medusa-modules/integration).
82
132
 
83
133
  ## License
84
134
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gorgo/medusa-integration",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "Integration module for Medusa",
5
5
  "author": {
6
6
  "name": "Gorgo",