@eventcatalog/core 3.35.0 → 3.36.1

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 (439) hide show
  1. package/dist/analytics/analytics.cjs +1 -1
  2. package/dist/analytics/analytics.js +2 -2
  3. package/dist/analytics/log-build.cjs +1 -1
  4. package/dist/analytics/log-build.js +3 -3
  5. package/dist/{chunk-LUWCWNOR.js → chunk-6D65JSOA.js} +1 -1
  6. package/dist/{chunk-NEWQKEP7.js → chunk-C7JCOHTI.js} +1 -1
  7. package/dist/chunk-D6IBLY3O.js +320 -0
  8. package/dist/{chunk-Y5O6SCX3.js → chunk-HDENGAZL.js} +1 -1
  9. package/dist/{chunk-DFLUDECO.js → chunk-UJ7DX4SA.js} +3 -3
  10. package/dist/{chunk-3KXCGYET.js → chunk-ULZYHF3V.js} +5 -0
  11. package/dist/{chunk-B2LDVIVY.js → chunk-V22QY5Q3.js} +1 -1
  12. package/dist/constants.cjs +1 -1
  13. package/dist/constants.js +1 -1
  14. package/dist/docs/api/01-overview.md +74 -0
  15. package/dist/docs/api/02-config.md +959 -0
  16. package/dist/docs/api/03-domain-api.md +394 -0
  17. package/dist/docs/api/04-service-api.md +368 -0
  18. package/dist/docs/api/05-command-api.md +319 -0
  19. package/dist/docs/api/06-event-api.md +318 -0
  20. package/dist/docs/api/06-query-api.md +316 -0
  21. package/dist/docs/api/08-channel-api.md +317 -0
  22. package/dist/docs/api/08-code-blocks.md +53 -0
  23. package/dist/docs/api/09-flow-api.md +362 -0
  24. package/dist/docs/api/10-entity-api.md +285 -0
  25. package/dist/docs/api/11-data-api.md +268 -0
  26. package/dist/docs/api/12-data-product-api.md +416 -0
  27. package/dist/docs/api/_category_.json +12 -0
  28. package/dist/docs/cli/channels.md +180 -0
  29. package/dist/docs/cli/commands.md +183 -0
  30. package/dist/docs/cli/custom-docs.md +78 -0
  31. package/dist/docs/cli/data-products.md +177 -0
  32. package/dist/docs/cli/data-stores.md +166 -0
  33. package/dist/docs/cli/diagrams.md +147 -0
  34. package/dist/docs/cli/domains.md +280 -0
  35. package/dist/docs/cli/entities.md +138 -0
  36. package/dist/docs/cli/events.md +186 -0
  37. package/dist/docs/cli/export.md +27 -0
  38. package/dist/docs/cli/governance.md +24 -0
  39. package/dist/docs/cli/import.md +26 -0
  40. package/dist/docs/cli/index.md +121 -0
  41. package/dist/docs/cli/messages.md +69 -0
  42. package/dist/docs/cli/queries.md +183 -0
  43. package/dist/docs/cli/services.md +266 -0
  44. package/dist/docs/cli/snapshots.md +44 -0
  45. package/dist/docs/cli/teams.md +75 -0
  46. package/dist/docs/cli/users.md +75 -0
  47. package/dist/docs/cli/utilities.md +43 -0
  48. package/dist/docs/contributing/01-overview.md +186 -0
  49. package/dist/docs/contributing/_category_.json +12 -0
  50. package/dist/docs/development/00-why-eventcatalog.md +87 -0
  51. package/dist/docs/development/01-fundamentals.md +34 -0
  52. package/dist/docs/development/01-getting-started/_category_.json +12 -0
  53. package/dist/docs/development/01-getting-started/configuration-overview.md +124 -0
  54. package/dist/docs/development/01-getting-started/develop-and-build.md +71 -0
  55. package/dist/docs/development/01-getting-started/installation.md +103 -0
  56. package/dist/docs/development/01-getting-started/project-structure.md +269 -0
  57. package/dist/docs/development/_category_.json +12 -0
  58. package/dist/docs/development/_getting-started.mdx +15 -0
  59. package/dist/docs/development/agent-resources/_category_.json +6 -0
  60. package/dist/docs/development/agent-resources/eventcatalog-skills.md +17 -0
  61. package/dist/docs/development/agent-resources/llms-full.md +17 -0
  62. package/dist/docs/development/agent-resources/llms.md +17 -0
  63. package/dist/docs/development/ask-your-architecture/01-intro.md +89 -0
  64. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +23 -0
  65. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +72 -0
  66. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +385 -0
  67. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +11 -0
  68. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +12 -0
  69. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +216 -0
  70. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +47 -0
  71. package/dist/docs/development/ask-your-architecture/04-skills/01-introduction.md +40 -0
  72. package/dist/docs/development/ask-your-architecture/04-skills/02-installation.md +60 -0
  73. package/dist/docs/development/ask-your-architecture/04-skills/_category_.json +11 -0
  74. package/dist/docs/development/ask-your-architecture/05-slack-integration/01-introduction.md +63 -0
  75. package/dist/docs/development/ask-your-architecture/05-slack-integration/02-slack-app-setup.md +154 -0
  76. package/dist/docs/development/ask-your-architecture/05-slack-integration/03-installation.md +169 -0
  77. package/dist/docs/development/ask-your-architecture/05-slack-integration/04-deployment.md +236 -0
  78. package/dist/docs/development/ask-your-architecture/05-slack-integration/05-usage.md +140 -0
  79. package/dist/docs/development/ask-your-architecture/05-slack-integration/06-troubleshooting.md +268 -0
  80. package/dist/docs/development/ask-your-architecture/05-slack-integration/_category_.json +12 -0
  81. package/dist/docs/development/ask-your-architecture/_category_.json +12 -0
  82. package/dist/docs/development/authentication/01-introduction.md +78 -0
  83. package/dist/docs/development/authentication/02-enabling-authentication.md +152 -0
  84. package/dist/docs/development/authentication/07-rbac-middleware.md +269 -0
  85. package/dist/docs/development/authentication/_category_.json +11 -0
  86. package/dist/docs/development/authentication/providers/03-setting-up-github.md +83 -0
  87. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +92 -0
  88. package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +100 -0
  89. package/dist/docs/development/authentication/providers/05-setting-up-okta.md +105 -0
  90. package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +106 -0
  91. package/dist/docs/development/authentication/providers/_category_.json +11 -0
  92. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +48 -0
  93. package/dist/docs/development/bring-your-own-documentation/_category_.json +12 -0
  94. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +60 -0
  95. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +207 -0
  96. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +46 -0
  97. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +45 -0
  98. package/dist/docs/development/bring-your-own-documentation/custom-pages/_category_.json +11 -0
  99. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +34 -0
  100. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +143 -0
  101. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +68 -0
  102. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +45 -0
  103. package/dist/docs/development/bring-your-own-documentation/resource-docs/_category_.json +11 -0
  104. package/dist/docs/development/components/04-snippets.md +134 -0
  105. package/dist/docs/development/components/05-using-components.md +67 -0
  106. package/dist/docs/development/components/07-resource-references.md +136 -0
  107. package/dist/docs/development/components/_category_.json +12 -0
  108. package/dist/docs/development/components/components/01-accordian.md +41 -0
  109. package/dist/docs/development/components/components/02-accordian-group.md +57 -0
  110. package/dist/docs/development/components/components/03-admonitions.md +43 -0
  111. package/dist/docs/development/components/components/04-attachments.md +56 -0
  112. package/dist/docs/development/components/components/05-channel-information.md +29 -0
  113. package/dist/docs/development/components/components/06-design.md +66 -0
  114. package/dist/docs/development/components/components/07-entitymap.md +71 -0
  115. package/dist/docs/development/components/components/08-flow.md +46 -0
  116. package/dist/docs/development/components/components/09-link.md +32 -0
  117. package/dist/docs/development/components/components/10-mermaid-file-loader.md +63 -0
  118. package/dist/docs/development/components/components/11-message-table.md +43 -0
  119. package/dist/docs/development/components/components/12-nodegraph.md +167 -0
  120. package/dist/docs/development/components/components/13-openapi.md +55 -0
  121. package/dist/docs/development/components/components/14-prompt.md +69 -0
  122. package/dist/docs/development/components/components/15-remote-schema.md +174 -0
  123. package/dist/docs/development/components/components/16-resource-group-table.md +86 -0
  124. package/dist/docs/development/components/components/17-resource-link.md +57 -0
  125. package/dist/docs/development/components/components/18-schema.md +44 -0
  126. package/dist/docs/development/components/components/19-schema-viewer.md +69 -0
  127. package/dist/docs/development/components/components/20-steps.md +83 -0
  128. package/dist/docs/development/components/components/21-tabs.md +55 -0
  129. package/dist/docs/development/components/components/22-tiles.md +53 -0
  130. package/dist/docs/development/components/components/23-visibility.md +61 -0
  131. package/dist/docs/development/components/components/_category_.json +12 -0
  132. package/dist/docs/development/components/diagram-syntax/01-mermaid.md +218 -0
  133. package/dist/docs/development/components/diagram-syntax/02-plantuml.md +140 -0
  134. package/dist/docs/development/components/diagram-syntax/03-structurizr.md +24 -0
  135. package/dist/docs/development/components/diagram-syntax/04-icepanel.md +75 -0
  136. package/dist/docs/development/components/diagram-syntax/_category_.json +12 -0
  137. package/dist/docs/development/components/external-diagram-embeds/01-miro.md +64 -0
  138. package/dist/docs/development/components/external-diagram-embeds/02-lucid.md +47 -0
  139. package/dist/docs/development/components/external-diagram-embeds/03-drawio.md +46 -0
  140. package/dist/docs/development/components/external-diagram-embeds/04-figjam.md +44 -0
  141. package/dist/docs/development/components/external-diagram-embeds/05-icepanel.md +68 -0
  142. package/dist/docs/development/components/external-diagram-embeds/_category_.json +12 -0
  143. package/dist/docs/development/customization/01-customize-landing-page.md +155 -0
  144. package/dist/docs/development/customization/02-themes.md +429 -0
  145. package/dist/docs/development/customization/03-search.md +79 -0
  146. package/dist/docs/development/customization/06-customize-tables.md +194 -0
  147. package/dist/docs/development/customization/_category_.json +12 -0
  148. package/dist/docs/development/customization/custom-components/00-what-is-mdx.md +73 -0
  149. package/dist/docs/development/customization/custom-components/01-introduction.md +28 -0
  150. package/dist/docs/development/customization/custom-components/02-adding-components.md +145 -0
  151. package/dist/docs/development/customization/custom-components/03-component-styling.md +27 -0
  152. package/dist/docs/development/customization/custom-components/04-javascript-components.md +32 -0
  153. package/dist/docs/development/customization/custom-components/_category_.json +11 -0
  154. package/dist/docs/development/customization/customize-sidebars/00-application-sidebar.md +45 -0
  155. package/dist/docs/development/customization/customize-sidebars/01-documentation-sidebar.md +187 -0
  156. package/dist/docs/development/customization/customize-sidebars/_category_.json +11 -0
  157. package/dist/docs/development/customization/customize-visualizer/00-visualizer-nodes.md +50 -0
  158. package/dist/docs/development/customization/customize-visualizer/_category_.json +11 -0
  159. package/dist/docs/development/deployment/_category_.json +12 -0
  160. package/dist/docs/development/deployment/build-and-deploy.md +71 -0
  161. package/dist/docs/development/deployment/build-ssr-mode.md +50 -0
  162. package/dist/docs/development/deployment/deployment-workflows.md +43 -0
  163. package/dist/docs/development/deployment/hosting-options.md +112 -0
  164. package/dist/docs/development/deployment/licenses.md +50 -0
  165. package/dist/docs/development/design/_category_.json +12 -0
  166. package/dist/docs/development/design/embed-designs-into-eventcatalog.md +29 -0
  167. package/dist/docs/development/design/further-reading.md +19 -0
  168. package/dist/docs/development/design/import-resources.md +27 -0
  169. package/dist/docs/development/design/intro.md +22 -0
  170. package/dist/docs/development/developer-tools/_category_.json +12 -0
  171. package/dist/docs/development/developer-tools/eventcatalog-linter.md +597 -0
  172. package/dist/docs/development/developer-tools/github-action.md +147 -0
  173. package/dist/docs/development/developer-tools/llms.txt.md +55 -0
  174. package/dist/docs/development/developer-tools/schemas.txt.md +42 -0
  175. package/dist/docs/development/governance/_category_.json +6 -0
  176. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +62 -0
  177. package/dist/docs/development/governance/architecture-change-detection/02-configuration.md +134 -0
  178. package/dist/docs/development/governance/architecture-change-detection/03-recipes.md +309 -0
  179. package/dist/docs/development/governance/architecture-change-detection/04-webhooks.md +187 -0
  180. package/dist/docs/development/governance/architecture-change-detection/05-ci-cd.md +121 -0
  181. package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +162 -0
  182. package/dist/docs/development/governance/architecture-change-detection/_category_.json +6 -0
  183. package/dist/docs/development/guides/12-customize-your-sidebar.md +12 -0
  184. package/dist/docs/development/guides/99-adding-analytics.md +138 -0
  185. package/dist/docs/development/guides/_category_.json +11 -0
  186. package/dist/docs/development/guides/changelogs/01-introduction.md +33 -0
  187. package/dist/docs/development/guides/changelogs/02-adding-changelogs.md +94 -0
  188. package/dist/docs/development/guides/changelogs/03-automated-changelogs.md +44 -0
  189. package/dist/docs/development/guides/changelogs/_category_.json +11 -0
  190. package/dist/docs/development/guides/channels/01-introduction.md +111 -0
  191. package/dist/docs/development/guides/channels/02-adding-channels.md +198 -0
  192. package/dist/docs/development/guides/channels/04-adding-messages-to-services.md +292 -0
  193. package/dist/docs/development/guides/channels/09-configuration +39 -0
  194. package/dist/docs/development/guides/channels/_category_.json +11 -0
  195. package/dist/docs/development/guides/channels/ownership-and-components/01-owners.md +44 -0
  196. package/dist/docs/development/guides/channels/ownership-and-components/02-components.md +16 -0
  197. package/dist/docs/development/guides/channels/ownership-and-components/_category_.json +11 -0
  198. package/dist/docs/development/guides/channels/versioning-and-lifecycle/01-versioning.md +31 -0
  199. package/dist/docs/development/guides/channels/versioning-and-lifecycle/02-changelog.md +56 -0
  200. package/dist/docs/development/guides/channels/versioning-and-lifecycle/_category_.json +11 -0
  201. package/dist/docs/development/guides/data/01-introduction.md +34 -0
  202. package/dist/docs/development/guides/data/02-adding-data.md +86 -0
  203. package/dist/docs/development/guides/data/03a-adding-schemas-to-data-stores.md +73 -0
  204. package/dist/docs/development/guides/data/_category_.json +11 -0
  205. package/dist/docs/development/guides/data/ownership-and-components/01-owners.md +45 -0
  206. package/dist/docs/development/guides/data/ownership-and-components/02-components.md +17 -0
  207. package/dist/docs/development/guides/data/ownership-and-components/_category_.json +11 -0
  208. package/dist/docs/development/guides/data/versioning-and-lifecycle/01-versioning.md +32 -0
  209. package/dist/docs/development/guides/data/versioning-and-lifecycle/02-changelog.md +57 -0
  210. package/dist/docs/development/guides/data/versioning-and-lifecycle/03-deprecating.md +71 -0
  211. package/dist/docs/development/guides/data/versioning-and-lifecycle/_category_.json +11 -0
  212. package/dist/docs/development/guides/data-products/01-introduction.md +116 -0
  213. package/dist/docs/development/guides/data-products/02-adding-data-products.md +157 -0
  214. package/dist/docs/development/guides/data-products/03-inputs-and-outputs.md +128 -0
  215. package/dist/docs/development/guides/data-products/04-contracts.md +102 -0
  216. package/dist/docs/development/guides/data-products/05-versioning.md +240 -0
  217. package/dist/docs/development/guides/data-products/06-adding-to-domains.md +52 -0
  218. package/dist/docs/development/guides/data-products/_category_.json +11 -0
  219. package/dist/docs/development/guides/diagrams/01-introduction.md +78 -0
  220. package/dist/docs/development/guides/diagrams/02-creating-diagrams.md +195 -0
  221. package/dist/docs/development/guides/diagrams/03-referencing-diagrams.md +195 -0
  222. package/dist/docs/development/guides/diagrams/04-versioning-diagrams.md +204 -0
  223. package/dist/docs/development/guides/diagrams/05-comparing-diagrams.md +145 -0
  224. package/dist/docs/development/guides/diagrams/06-diagrams-with-llms.md +165 -0
  225. package/dist/docs/development/guides/diagrams/_category_.json +10 -0
  226. package/dist/docs/development/guides/domains/01-introduction.md +22 -0
  227. package/dist/docs/development/guides/domains/02-creating-domains/02-adding-domains.md +108 -0
  228. package/dist/docs/development/guides/domains/02-creating-domains/02a-subdomains.md +84 -0
  229. package/dist/docs/development/guides/domains/02-creating-domains/03-adding-services-to-domains.md +90 -0
  230. package/dist/docs/development/guides/domains/02-creating-domains/04-adding-messages-to-domains.md +107 -0
  231. package/dist/docs/development/guides/domains/02-creating-domains/05-adding-data-products-to-domains.md +105 -0
  232. package/dist/docs/development/guides/domains/02-creating-domains/_category_.json +11 -0
  233. package/dist/docs/development/guides/domains/03-ownership-and-language/01-owners.md +36 -0
  234. package/dist/docs/development/guides/domains/03-ownership-and-language/02-adding-ubiquitous-language.md +75 -0
  235. package/dist/docs/development/guides/domains/03-ownership-and-language/_category_.json +10 -0
  236. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/01-versioning.md +40 -0
  237. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/02-changelog.md +53 -0
  238. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/_category_.json +10 -0
  239. package/dist/docs/development/guides/domains/05-entities/01-introduction.md +24 -0
  240. package/dist/docs/development/guides/domains/05-entities/02-adding-entities.md +157 -0
  241. package/dist/docs/development/guides/domains/05-entities/03-adding-entities-to-domains.md +30 -0
  242. package/dist/docs/development/guides/domains/05-entities/04-domain-entity-map.md +134 -0
  243. package/dist/docs/development/guides/domains/05-entities/_category_.json +11 -0
  244. package/dist/docs/development/guides/domains/08-domain-integration-map.md +41 -0
  245. package/dist/docs/development/guides/domains/_category_.json +11 -0
  246. package/dist/docs/development/guides/flows/01-introduction.md +36 -0
  247. package/dist/docs/development/guides/flows/02-adding-flows.md +198 -0
  248. package/dist/docs/development/guides/flows/03-flow-nodes.md +273 -0
  249. package/dist/docs/development/guides/flows/04-adding-flows-to-services.md +42 -0
  250. package/dist/docs/development/guides/flows/05-adding-flows-to-domains.md +43 -0
  251. package/dist/docs/development/guides/flows/06-versioning.md +27 -0
  252. package/dist/docs/development/guides/flows/07-create-flow-with-ai.md +171 -0
  253. package/dist/docs/development/guides/flows/_category_.json +11 -0
  254. package/dist/docs/development/guides/messages/01-overview.md +57 -0
  255. package/dist/docs/development/guides/messages/_category_.json +11 -0
  256. package/dist/docs/development/guides/messages/commands/01-introduction.md +26 -0
  257. package/dist/docs/development/guides/messages/commands/02-adding-commands.md +131 -0
  258. package/dist/docs/development/guides/messages/commands/_category_.json +11 -0
  259. package/dist/docs/development/guides/messages/common/01-map-to-producers-and-consumers.md +37 -0
  260. package/dist/docs/development/guides/messages/common/02-adding-schemas.md +58 -0
  261. package/dist/docs/development/guides/messages/common/02-deprecating.md +71 -0
  262. package/dist/docs/development/guides/messages/common/02-draft-messages.md +63 -0
  263. package/dist/docs/development/guides/messages/common/02-examples.md +99 -0
  264. package/dist/docs/development/guides/messages/common/03-owners.md +40 -0
  265. package/dist/docs/development/guides/messages/common/04-versioning.md +27 -0
  266. package/dist/docs/development/guides/messages/common/05-changelog.md +73 -0
  267. package/dist/docs/development/guides/messages/common/07-components.md +12 -0
  268. package/dist/docs/development/guides/messages/common/08-shared-messages-across-boundaries.md +70 -0
  269. package/dist/docs/development/guides/messages/common/09-grouping-messages.md +98 -0
  270. package/dist/docs/development/guides/messages/common/_category_.json +11 -0
  271. package/dist/docs/development/guides/messages/events/01-introduction.md +25 -0
  272. package/dist/docs/development/guides/messages/events/02-adding-events.md +130 -0
  273. package/dist/docs/development/guides/messages/events/_category_.json +11 -0
  274. package/dist/docs/development/guides/messages/queries/01-introduction.md +25 -0
  275. package/dist/docs/development/guides/messages/queries/02-adding-queries.md +130 -0
  276. package/dist/docs/development/guides/messages/queries/_category_.json +11 -0
  277. package/dist/docs/development/guides/owners/_category_.json +11 -0
  278. package/dist/docs/development/guides/owners/teams/01-introduction.md +21 -0
  279. package/dist/docs/development/guides/owners/teams/02-adding-teams.md +73 -0
  280. package/dist/docs/development/guides/owners/teams/_category_.json +11 -0
  281. package/dist/docs/development/guides/owners/users/01-introduction.md +20 -0
  282. package/dist/docs/development/guides/owners/users/02-adding-users.md +70 -0
  283. package/dist/docs/development/guides/owners/users/_category_.json +11 -0
  284. package/dist/docs/development/guides/schemas/01-introduction.md +64 -0
  285. package/dist/docs/development/guides/schemas/02-schema-explorer.md +74 -0
  286. package/dist/docs/development/guides/schemas/03-schema-api.md +59 -0
  287. package/dist/docs/development/guides/schemas/04-schema-mcp.md +22 -0
  288. package/dist/docs/development/guides/schemas/05-field-usage.md +120 -0
  289. package/dist/docs/development/guides/schemas/06-fields-explorer.md +120 -0
  290. package/dist/docs/development/guides/schemas/_category_.json +11 -0
  291. package/dist/docs/development/guides/services/01-introduction.md +33 -0
  292. package/dist/docs/development/guides/services/02-adding-services.md +113 -0
  293. package/dist/docs/development/guides/services/03-creating-external-systems.md +71 -0
  294. package/dist/docs/development/guides/services/_category_.json +11 -0
  295. package/dist/docs/development/guides/services/adding-to-services/01-messages.md +229 -0
  296. package/dist/docs/development/guides/services/adding-to-services/02-datastores.md +77 -0
  297. package/dist/docs/development/guides/services/adding-to-services/03-entities.md +47 -0
  298. package/dist/docs/development/guides/services/adding-to-services/04-openapi.md +97 -0
  299. package/dist/docs/development/guides/services/adding-to-services/05-asyncapi.md +97 -0
  300. package/dist/docs/development/guides/services/adding-to-services/06-graphql.md +96 -0
  301. package/dist/docs/development/guides/services/adding-to-services/_category_.json +10 -0
  302. package/dist/docs/development/guides/services/ownership-and-components/01-owners.md +41 -0
  303. package/dist/docs/development/guides/services/ownership-and-components/02-components.md +13 -0
  304. package/dist/docs/development/guides/services/ownership-and-components/_category_.json +11 -0
  305. package/dist/docs/development/guides/services/versioning-and-lifecycle/01-versioning.md +27 -0
  306. package/dist/docs/development/guides/services/versioning-and-lifecycle/02-changelog.md +52 -0
  307. package/dist/docs/development/guides/services/versioning-and-lifecycle/03-deprecating.md +70 -0
  308. package/dist/docs/development/guides/services/versioning-and-lifecycle/_category_.json +11 -0
  309. package/dist/docs/development/upgrading/_category_.json +12 -0
  310. package/dist/docs/development/upgrading/upgrading.md +142 -0
  311. package/dist/docs/development/upgrading/v2.md +69 -0
  312. package/dist/docs/development/upgrading/v3.md +277 -0
  313. package/dist/docs/miro/_category_.json +12 -0
  314. package/dist/docs/miro/contributing/01-getting-involved.md +53 -0
  315. package/dist/docs/miro/contributing/_category_.json +11 -0
  316. package/dist/docs/miro/getting-started/01-overview.md +63 -0
  317. package/dist/docs/miro/getting-started/02-installation.md +37 -0
  318. package/dist/docs/miro/getting-started/03-connecting-to-eventcatalog.md +59 -0
  319. package/dist/docs/miro/getting-started/_category_.json +11 -0
  320. package/dist/docs/miro/guides/01-adding-resources-to-board.md +90 -0
  321. package/dist/docs/miro/guides/02-creating-new-resources.md +61 -0
  322. package/dist/docs/miro/guides/03-editing-resources.md +50 -0
  323. package/dist/docs/miro/guides/04-connected-resources.md +54 -0
  324. package/dist/docs/miro/guides/05-services-and-dependencies.md +54 -0
  325. package/dist/docs/miro/guides/06-navigating-the-board.md +44 -0
  326. package/dist/docs/miro/guides/07-exporting-to-eventcatalog.md +75 -0
  327. package/dist/docs/miro/guides/_category_.json +11 -0
  328. package/dist/docs/miro/specifications/01-asyncapi.md +86 -0
  329. package/dist/docs/miro/specifications/02-openapi.md +86 -0
  330. package/dist/docs/miro/specifications/03-schema-registries.md +88 -0
  331. package/dist/docs/miro/specifications/_category_.json +11 -0
  332. package/dist/docs/miro/using-ai/01-overview.md +105 -0
  333. package/dist/docs/miro/using-ai/_category_.json +11 -0
  334. package/dist/docs/plugins/01-intro.md +49 -0
  335. package/dist/docs/plugins/02-generators.md +76 -0
  336. package/dist/docs/plugins/03-all-plugins.md +26 -0
  337. package/dist/docs/plugins/_category_.json +12 -0
  338. package/dist/docs/plugins/amazon-apigateway/00-intro.md +75 -0
  339. package/dist/docs/plugins/amazon-apigateway/01-installation.md +198 -0
  340. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +136 -0
  341. package/dist/docs/plugins/amazon-apigateway/03-features.md +71 -0
  342. package/dist/docs/plugins/amazon-apigateway/04-examples.md +15 -0
  343. package/dist/docs/plugins/amazon-apigateway/_category_.json +11 -0
  344. package/dist/docs/plugins/apicurio/00-intro.md +102 -0
  345. package/dist/docs/plugins/apicurio/01-installation.md +165 -0
  346. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +682 -0
  347. package/dist/docs/plugins/apicurio/03-features.md +221 -0
  348. package/dist/docs/plugins/apicurio/04-examples.md +20 -0
  349. package/dist/docs/plugins/apicurio/_category_.json +12 -0
  350. package/dist/docs/plugins/asyncapi/00-intro.md +81 -0
  351. package/dist/docs/plugins/asyncapi/01-installation.md +155 -0
  352. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +312 -0
  353. package/dist/docs/plugins/asyncapi/03-features.md +698 -0
  354. package/dist/docs/plugins/asyncapi/03a-workflows.md +153 -0
  355. package/dist/docs/plugins/asyncapi/04-examples.md +23 -0
  356. package/dist/docs/plugins/asyncapi/04-using-reference-objects.md +45 -0
  357. package/dist/docs/plugins/asyncapi/_category_.json +12 -0
  358. package/dist/docs/plugins/aws-glue-registry/00-intro.md +104 -0
  359. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +305 -0
  360. package/dist/docs/plugins/aws-glue-registry/01-features.md +287 -0
  361. package/dist/docs/plugins/aws-glue-registry/02-examples.md +368 -0
  362. package/dist/docs/plugins/aws-glue-registry/03-api.md +282 -0
  363. package/dist/docs/plugins/aws-glue-registry/_category_.json +11 -0
  364. package/dist/docs/plugins/azure-schema-registry/00-intro.md +92 -0
  365. package/dist/docs/plugins/azure-schema-registry/01-installation.md +409 -0
  366. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +375 -0
  367. package/dist/docs/plugins/azure-schema-registry/03-features.md +347 -0
  368. package/dist/docs/plugins/azure-schema-registry/04-examples.md +378 -0
  369. package/dist/docs/plugins/azure-schema-registry/_category_.json +12 -0
  370. package/dist/docs/plugins/backstage/00-intro.md +67 -0
  371. package/dist/docs/plugins/backstage/01-installation.md +250 -0
  372. package/dist/docs/plugins/backstage/02-api.md +51 -0
  373. package/dist/docs/plugins/backstage/03-examples.md +12 -0
  374. package/dist/docs/plugins/backstage/_category_.json +11 -0
  375. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +90 -0
  376. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +223 -0
  377. package/dist/docs/plugins/confluent-schema-registry/02-plugin-configuration.md +473 -0
  378. package/dist/docs/plugins/confluent-schema-registry/03-features.md +43 -0
  379. package/dist/docs/plugins/confluent-schema-registry/04-examples.md +19 -0
  380. package/dist/docs/plugins/confluent-schema-registry/_category_.json +12 -0
  381. package/dist/docs/plugins/eventbridge/00-intro.md +55 -0
  382. package/dist/docs/plugins/eventbridge/00a-installation.md +317 -0
  383. package/dist/docs/plugins/eventbridge/01-features.md +225 -0
  384. package/dist/docs/plugins/eventbridge/02-examples.md +17 -0
  385. package/dist/docs/plugins/eventbridge/03-api.md +441 -0
  386. package/dist/docs/plugins/eventbridge/03a-workflows.md +133 -0
  387. package/dist/docs/plugins/eventbridge/_category_.json +11 -0
  388. package/dist/docs/plugins/eventcatalog-federation/00-introduction.md +69 -0
  389. package/dist/docs/plugins/eventcatalog-federation/01-installation.md +182 -0
  390. package/dist/docs/plugins/eventcatalog-federation/02-plugin-configuration.md +208 -0
  391. package/dist/docs/plugins/eventcatalog-federation/03-examples.md +15 -0
  392. package/dist/docs/plugins/eventcatalog-federation/04-configuration.md +193 -0
  393. package/dist/docs/plugins/eventcatalog-federation/05-setup-team-catalog.md +97 -0
  394. package/dist/docs/plugins/eventcatalog-federation/_category_.json +11 -0
  395. package/dist/docs/plugins/github/00-intro.md +93 -0
  396. package/dist/docs/plugins/github/01-installation.md +293 -0
  397. package/dist/docs/plugins/github/02-plugin-configuration.md +253 -0
  398. package/dist/docs/plugins/github/03-features.md +42 -0
  399. package/dist/docs/plugins/github/04-examples.md +17 -0
  400. package/dist/docs/plugins/github/_category_.json +12 -0
  401. package/dist/docs/plugins/graphql/00-intro.md +74 -0
  402. package/dist/docs/plugins/graphql/01-installation.md +144 -0
  403. package/dist/docs/plugins/graphql/02-plugin-configuration.md +127 -0
  404. package/dist/docs/plugins/graphql/03-features.md +197 -0
  405. package/dist/docs/plugins/graphql/04-examples.md +15 -0
  406. package/dist/docs/plugins/graphql/_category_.json +12 -0
  407. package/dist/docs/plugins/hookdeck/01-intro.md +152 -0
  408. package/dist/docs/plugins/hookdeck/02-api.md +133 -0
  409. package/dist/docs/plugins/hookdeck/03-cli.md +45 -0
  410. package/dist/docs/plugins/hookdeck/_category_.json +11 -0
  411. package/dist/docs/plugins/openapi/00-intro.md +78 -0
  412. package/dist/docs/plugins/openapi/01-installation.md +148 -0
  413. package/dist/docs/plugins/openapi/02-plugin-configuration.md +332 -0
  414. package/dist/docs/plugins/openapi/03-features.md +790 -0
  415. package/dist/docs/plugins/openapi/03a-workflows.md +153 -0
  416. package/dist/docs/plugins/openapi/04-examples.md +23 -0
  417. package/dist/docs/plugins/openapi/_category_.json +12 -0
  418. package/dist/eventcatalog.cjs +434 -35
  419. package/dist/eventcatalog.config.d.cts +8 -0
  420. package/dist/eventcatalog.config.d.ts +8 -0
  421. package/dist/eventcatalog.js +87 -10
  422. package/dist/features.cjs +6 -0
  423. package/dist/features.d.cts +2 -1
  424. package/dist/features.d.ts +2 -1
  425. package/dist/features.js +3 -1
  426. package/dist/generate.cjs +1 -1
  427. package/dist/generate.js +3 -3
  428. package/dist/search-indexer.cjs +356 -0
  429. package/dist/search-indexer.d.cts +30 -0
  430. package/dist/search-indexer.d.ts +30 -0
  431. package/dist/search-indexer.js +10 -0
  432. package/dist/utils/cli-logger.cjs +1 -1
  433. package/dist/utils/cli-logger.js +2 -2
  434. package/eventcatalog/astro.config.mjs +28 -32
  435. package/eventcatalog/src/components/Search/SearchModal.tsx +248 -148
  436. package/eventcatalog/src/components/Search/search-utils.spec.ts +138 -1
  437. package/eventcatalog/src/components/Search/search-utils.ts +271 -0
  438. package/eventcatalog/src/env.d.ts +1 -0
  439. package/package.json +4 -3
@@ -0,0 +1,682 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog Apicurio Registry plugin
5
+ sidebar_label: Plugin Configuration
6
+ title: Plugin Configuration
7
+ description: Configuration of the EventCatalog Apicurio Registry plugin
8
+ ---
9
+
10
+ # Plugin Configuration
11
+
12
+ ## Overview
13
+
14
+ The EventCatalog Apicurio Registry plugin is configured in the `eventcatalog.config.js` file inside the `generators` array.
15
+
16
+ :::info Authentication
17
+ If your Apicurio Registry requires authentication, you can configure a Bearer token as an environment variable.
18
+
19
+ <details>
20
+ <summary>Example .env file</summary>
21
+
22
+ ```bash
23
+ export APICURIO_ACCESS_TOKEN=your-access-token-here
24
+ ```
25
+
26
+ </details>
27
+
28
+ :::
29
+
30
+ ## Required Configuration Options
31
+
32
+ | Option | Type | Required | Description |
33
+ |--------|------|----------|-------------|
34
+ | `registryUrl` | `string` | Yes | The URL of your Apicurio Registry (e.g., `http://localhost:8080`). The plugin automatically appends the `/apis/registry/v3` API path. |
35
+ | `includeAllVersions` | `boolean` | No | If true, all versions of the schemas will be imported into EventCatalog (default is `false`). When enabled, each version of a schema creates a separate versioned entry in EventCatalog. |
36
+
37
+ ## Optional Configuration Options
38
+
39
+ ### Services
40
+
41
+ You can assign schemas to services (producers/consumers).
42
+
43
+ | Option | Type | Default | Description |
44
+ |--------|------|---------|-------------|
45
+ | `services` | object | - | List of services to assign the schemas to. |
46
+ | `services.id` | string | - | EventCatalog ID for the service. |
47
+ | `services.version` | string | - | Version of the service. |
48
+ | `services.name` | string | - | Name of the service (optional, defaults to ID). |
49
+ | `services.summary` | string | - | Summary description of the service (optional). |
50
+ | `services.sends` | Filter | - | Configuration to assign schemas that this service sends (publishes). |
51
+ | `services.receives` | Filter | - | Configuration to assign schemas that this service receives (consumes). |
52
+ | `services.writesTo` | array | - | Array of services this service writes to. Each entry has `id` (required) and optional `version`. |
53
+ | `services.readsFrom` | array | - | Array of services this service reads from. Each entry has `id` (required) and optional `version`. |
54
+ | `services.specifications` | array | - | Array of specification artifacts (OpenAPI/AsyncAPI) to attach to the service. See [Specifications](#specifications) section below. |
55
+
56
+ ### Domains
57
+
58
+ You can define and assign domains to your services.
59
+
60
+ | Option | Type | Default | Description |
61
+ |--------|------|---------|-------------|
62
+ | `domain.id` | string | - | EventCatalog ID for the domain (e.g `orders`). |
63
+ | `domain.name` | string | - | Name of the domain (e.g `Orders`). |
64
+ | `domain.version` | string | - | Version of the domain (e.g `1.0.0`). |
65
+ | `domain.summary` | string | - | Summary description of the domain (optional). |
66
+
67
+ ### Specifications
68
+
69
+ You can attach OpenAPI or AsyncAPI specifications stored in your Apicurio Registry to services. When configured with a generator, these specifications will be automatically processed to generate comprehensive service documentation including REST endpoints, async events, and more.
70
+
71
+ <details>
72
+ <summary>Learn more about attaching OpenAPI and AsyncAPI specifications</summary>
73
+
74
+ You can attach OpenAPI or AsyncAPI specifications from your Apicurio Registry to services. These specifications can optionally be processed by their respective EventCatalog plugins to generate additional documentation.
75
+
76
+ :::info Plugin Licenses Required
77
+ The OpenAPI and AsyncAPI generators are separate licensed plugins. To use them with the Apicurio plugin, you'll need to:
78
+ - Install the respective plugins: `npm install @eventcatalog/generator-openapi @eventcatalog/generator-asyncapi`
79
+ - Obtain license keys from [EventCatalog Cloud](https://eventcatalog.cloud) (14-day free trial available)
80
+ - Configure the license keys in your `.env` file:
81
+ - `EVENTCATALOG_LICENSE_KEY_OPENAPI=your-openapi-license-key`
82
+ - `EVENTCATALOG_LICENSE_KEY_ASYNCAPI=your-asyncapi-license-key`
83
+
84
+ Learn more: [OpenAPI Plugin Docs](/docs/plugins/openapi/intro) | [AsyncAPI Plugin Docs](/docs/plugins/asyncapi/intro)
85
+ :::
86
+
87
+ | Option | Type | Required | Description |
88
+ |--------|------|----------|-------------|
89
+ | `services.specifications` | array | No | Array of specification configurations to attach to the service. |
90
+ | `specifications[].type` | string | Yes | Type of specification: `'openapi'` or `'asyncapi'`. |
91
+ | `specifications[].artifactId` | string | Yes | The artifact ID in Apicurio Registry. |
92
+ | `specifications[].version` | string | No | Specific version to fetch, or `'latest'` (default). |
93
+ | `specifications[].generator` | array | No | Optional EventCatalog generator to process the specification. Format: `['@eventcatalog/generator-openapi', { options }]` |
94
+
95
+ **Example:**
96
+
97
+ ```js
98
+ services: [{
99
+ id: 'Orders Service',
100
+ version: '1.0.0',
101
+ specifications: [
102
+ {
103
+ type: 'openapi',
104
+ artifactId: 'OrdersAPI-OPENAPI',
105
+ version: 'latest',
106
+ generator: ['@eventcatalog/generator-openapi', {
107
+ // generator options here
108
+ }]
109
+ },
110
+ {
111
+ type: 'asyncapi',
112
+ artifactId: 'OrdersEvents-ASYNCAPI',
113
+ version: '2.0.0',
114
+ generator: ['@eventcatalog/generator-asyncapi', {
115
+ // generator options here
116
+ }]
117
+ }
118
+ ]
119
+ }]
120
+ ```
121
+
122
+ When a generator is configured, the plugin will:
123
+ 1. Fetch the specification from Apicurio Registry
124
+ 2. Save it to the service directory
125
+ 3. Run the specified generator to process the specification
126
+ 4. Pass the domain configuration to the generator if a domain is configured
127
+
128
+ </details>
129
+
130
+ ### Filtering schemas to services
131
+
132
+ When you assign schemas to a service, you can use a range of filtering options including exact matches, prefixes, suffixes, and includes.
133
+
134
+ Here are some examples of how to filter schemas to services.
135
+
136
+ <details>
137
+ <summary>`exact` matching example - Match schemas that exactly match the specified name</summary>
138
+
139
+ **What is exact matching?**
140
+
141
+ Exact matching is when the schema artifact ID exactly matches the specified name.
142
+
143
+ In this example, the `Orders Service` will send `events` with the artifact IDs `order-placed`, `order-cancelled` and receive `commands` with the artifact ID `place-order`.
144
+
145
+ Example artifacts in Apicurio Registry:
146
+ - `order-placed`
147
+ - `order-cancelled`
148
+ - `place-order`
149
+ - `cancel-order`
150
+
151
+ ```js
152
+ // ...
153
+ generators: [
154
+ // Import schemas (using filters), assign them to services and domains
155
+ [
156
+ '@eventcatalog/generator-apicurio',
157
+ {
158
+ // The URL of your Apicurio Registry
159
+ registryUrl: 'http://localhost:8080',
160
+ // The services to assign schemas to (optional)
161
+ services: [
162
+ {
163
+ id: 'Orders Service',
164
+ version: '1.0.0',
165
+ // Order service publishes events that match the artifact IDs
166
+ sends: [{ events: ['order-placed', 'order-cancelled']}],
167
+ // The Order service receives commands that match the artifact IDs
168
+ receives: [{ commands: ['place-order', 'cancel-order']}],
169
+ }
170
+ ],
171
+ },
172
+ ],
173
+ ];
174
+ ```
175
+
176
+ </details>
177
+
178
+ <details>
179
+ <summary>`suffix` matching example - Match schemas that end with a specific string</summary>
180
+
181
+ **What is suffix matching?**
182
+
183
+ Suffix matching is when the artifact ID ends with the specified suffix.
184
+
185
+ In this example, the `Orders Service` will send `events` with a suffix of `-placed` and receive `commands` with a suffix of `-command`.
186
+
187
+ Example artifacts in registry:
188
+ - `order-placed`
189
+ - `order-cancelled`
190
+ - `place-order-command`
191
+ - `cancel-order-command`
192
+
193
+ ```js
194
+ // ...
195
+ generators: [
196
+ // Import schemas (using filters), assign them to services and domains
197
+ [
198
+ '@eventcatalog/generator-apicurio',
199
+ {
200
+ // The URL of your Apicurio Registry
201
+ registryUrl: 'http://localhost:8080',
202
+ // The services to assign schemas to (optional)
203
+ services: [
204
+ {
205
+ id: 'Orders Service',
206
+ version: '1.0.0',
207
+ // Order service publishes events with a suffix of `-placed`
208
+ sends: [{ events: { suffix: '-placed' }}],
209
+ // The Order service receives commands with a suffix of `-command`
210
+ receives: [{ commands: { suffix: '-command' }}],
211
+ }
212
+ ],
213
+ },
214
+ ],
215
+ ];
216
+ ```
217
+
218
+ </details>
219
+
220
+ <details>
221
+ <summary>`prefix` matching example - Match schemas that start with a specific string</summary>
222
+
223
+ **What is prefix matching?**
224
+
225
+ Prefix matching is when the artifact ID starts with the specified prefix.
226
+
227
+ In this example, the `Orders Service` will send `events` with a prefix of `order-` and receive `commands` with a prefix of `analytics-`.
228
+
229
+ Example artifacts in registry:
230
+ - `order-placed`
231
+ - `order-cancelled`
232
+ - `analytics-place-order`
233
+ - `analytics-cancel-order`
234
+
235
+ ```js
236
+ // ...
237
+ generators: [
238
+ // Import schemas (using filters), assign them to services and domains
239
+ [
240
+ '@eventcatalog/generator-apicurio',
241
+ {
242
+ // The URL of your Apicurio Registry
243
+ registryUrl: 'http://localhost:8080',
244
+ // The services to assign schemas to (optional)
245
+ services: [
246
+ {
247
+ id: 'Orders Service',
248
+ version: '1.0.0',
249
+ // Order service publishes events with a prefix of `order-`
250
+ sends: [{ events: { prefix: 'order-' }}],
251
+ // The Order service receives commands with a prefix of `analytics-`
252
+ receives: [{ commands: { prefix: 'analytics-' }}],
253
+ }
254
+ ],
255
+ },
256
+ ],
257
+ ];
258
+ ```
259
+
260
+ </details>
261
+
262
+ <details>
263
+ <summary>`includes` matching example - Match schemas that include a specific string</summary>
264
+
265
+ **What is includes matching?**
266
+
267
+ Includes matching is when the artifact ID contains the specified string anywhere in its name.
268
+
269
+ In this example, the `Orders Service` will send `events` that include the string `order` and receive `commands` that include the string `analytics`.
270
+
271
+ Example artifacts in registry:
272
+ - `order-placed`
273
+ - `order-cancelled`
274
+ - `analytics-place-order`
275
+ - `analytics-cancel-order`
276
+
277
+ ```js
278
+ // ...
279
+ generators: [
280
+ // Import schemas (using filters), assign them to services and domains
281
+ [
282
+ '@eventcatalog/generator-apicurio',
283
+ {
284
+ // The URL of your Apicurio Registry
285
+ registryUrl: 'http://localhost:8080',
286
+ // The services to assign schemas to (optional)
287
+ services: [
288
+ {
289
+ id: 'Orders Service',
290
+ version: '1.0.0',
291
+ // Order service publishes events that include `order`
292
+ sends: [{ events: { includes: 'order' }}],
293
+ // The Order service receives commands that include `analytics`
294
+ receives: [{ commands: { includes: 'analytics' }}],
295
+ }
296
+ ],
297
+ },
298
+ ],
299
+ ];
300
+ ```
301
+
302
+ </details>
303
+
304
+ <details>
305
+ <summary>Message types - Document schemas as events, commands, or queries</summary>
306
+
307
+ **What are message types?**
308
+
309
+ You can document your schemas as different message types in EventCatalog:
310
+ - **events**: Things that have happened (past tense)
311
+ - **commands**: Requests to do something (imperative)
312
+ - **queries**: Requests for information
313
+
314
+ In this example, the `Orders Service` sends events and receives both commands and queries.
315
+
316
+ ```js
317
+ // ...
318
+ generators: [
319
+ [
320
+ '@eventcatalog/generator-apicurio',
321
+ {
322
+ registryUrl: 'http://localhost:8080',
323
+ services: [
324
+ {
325
+ id: 'Orders Service',
326
+ version: '1.0.0',
327
+ // Sends events
328
+ sends: [{ events: { prefix: 'order-' }}],
329
+ // Receives commands and queries
330
+ receives: [
331
+ { commands: ['place-order', 'cancel-order']},
332
+ { queries: ['get-order-status']}
333
+ ],
334
+ }
335
+ ],
336
+ },
337
+ ],
338
+ ];
339
+ ```
340
+
341
+ </details>
342
+
343
+ ## Example Configurations
344
+
345
+ The Apicurio Registry plugin is flexible to work with your use case.
346
+ Here are a few examples of how you can configure the plugin.
347
+
348
+ <details>
349
+ <summary>Example configuration - Import all schemas (and versions) into EventCatalog</summary>
350
+
351
+ In this example we import all schemas from the Apicurio Registry into EventCatalog.
352
+ No services or domains are configured or created. This is a simple way to import schemas into the catalog and keep them in sync with your documentation.
353
+
354
+ ```js title="eventcatalog.config.js"
355
+ // ...rest of eventcatalog.config.js file
356
+ generators: [
357
+ [
358
+ '@eventcatalog/generator-apicurio',
359
+ {
360
+ // The URL of your Apicurio Registry
361
+ registryUrl: 'http://localhost:8080',
362
+
363
+ // Include all versions of the schemas
364
+ includeAllVersions: true,
365
+ }
366
+ ]
367
+ ],
368
+ };
369
+ ```
370
+
371
+ </details>
372
+
373
+ <details>
374
+ <summary>Example configuration - Assign schemas to services</summary>
375
+
376
+ In this example we assign schemas to services (producers and consumers in EventCatalog).
377
+
378
+ ```js title="eventcatalog.config.js"
379
+ // ...rest of eventcatalog.config.js file
380
+ generators: [
381
+ [
382
+ '@eventcatalog/generator-apicurio',
383
+ {
384
+ // The URL of your Apicurio Registry
385
+ registryUrl: 'http://localhost:8080',
386
+ // The services to assign schemas to (optional)
387
+ services: [
388
+ {
389
+ id: 'Orders Service',
390
+ version: '1.0.0',
391
+ // Order service publishes events that match the artifact IDs
392
+ sends: [{ events: ['order-placed', 'order-cancelled']}],
393
+ // The Order service receives commands that match the artifact IDs
394
+ receives: [{ commands: ['place-order', 'cancel-order']}],
395
+ }
396
+ ]
397
+ }
398
+ ]
399
+ ],
400
+ };
401
+ ```
402
+
403
+ </details>
404
+
405
+ <details>
406
+ <summary>Example configuration - Assign schemas to services (with filters)</summary>
407
+
408
+ In this example we assign schemas to services (producers and consumers in EventCatalog) but we use filters to match the schemas.
409
+
410
+ ```js title="eventcatalog.config.js"
411
+ // ...rest of eventcatalog.config.js file
412
+ generators: [
413
+ [
414
+ '@eventcatalog/generator-apicurio',
415
+ {
416
+ // The URL of your Apicurio Registry
417
+ registryUrl: 'http://localhost:8080',
418
+ // The services to assign schemas to (optional)
419
+ services: [
420
+ {
421
+ id: 'Orders Service',
422
+ version: '1.0.0',
423
+ // Order service publishes events that start with `order-`
424
+ sends: [{ events: { prefix: 'order-' }}],
425
+ // The Order service receives commands that end with `-command`
426
+ receives: [{ commands: { suffix: '-command' }}],
427
+ }
428
+ ]
429
+ }
430
+ ]
431
+ ],
432
+ };
433
+ ```
434
+
435
+ </details>
436
+
437
+ <details>
438
+ <summary>Example configuration - Assign schemas to services within a domain</summary>
439
+
440
+ In this example we assign schemas to services (producers and consumers in EventCatalog) and we also assign them to a *domain*.
441
+
442
+ ```js title="eventcatalog.config.js"
443
+ // ...rest of eventcatalog.config.js file
444
+ generators: [
445
+ [
446
+ '@eventcatalog/generator-apicurio',
447
+ {
448
+ // The URL of your Apicurio Registry
449
+ registryUrl: 'http://localhost:8080',
450
+ // The services to assign schemas to (optional)
451
+ services: [
452
+ {
453
+ id: 'Orders Service',
454
+ version: '1.0.0',
455
+ // Order service publishes events
456
+ sends: [{ events: ['order-placed', 'order-cancelled']}],
457
+ // The Order service receives commands
458
+ receives: [{ commands: ['place-order', 'cancel-order']}],
459
+ }
460
+ ],
461
+ // The domain to assign the service to
462
+ // if it does not exist, it will be created
463
+ domain: {
464
+ id: 'orders',
465
+ name: 'Orders',
466
+ version: '1.0.0',
467
+ }
468
+ }
469
+ ]
470
+ ],
471
+ };
472
+ ```
473
+
474
+ </details>
475
+
476
+ <details>
477
+ <summary>Example configuration - Attach specifications and use nested generators</summary>
478
+
479
+ In this example we attach OpenAPI and AsyncAPI specifications to a service and use the respective EventCatalog generators to process them.
480
+
481
+ ```js title="eventcatalog.config.js"
482
+ // ...rest of eventcatalog.config.js file
483
+ generators: [
484
+ [
485
+ '@eventcatalog/generator-apicurio',
486
+ {
487
+ // The URL of your Apicurio Registry
488
+ registryUrl: 'http://localhost:8080',
489
+ // The services to assign schemas to
490
+ services: [
491
+ {
492
+ id: 'Orders Service',
493
+ version: '1.0.0',
494
+ // Attach specifications from Apicurio Registry
495
+ specifications: [
496
+ {
497
+ type: 'openapi',
498
+ artifactId: 'OrdersAPI-OPENAPI',
499
+ version: 'latest',
500
+ // Use the OpenAPI generator to process the specification
501
+ generator: ['@eventcatalog/generator-openapi', {
502
+ // Pass options to the OpenAPI generator if needed
503
+ }]
504
+ },
505
+ {
506
+ type: 'asyncapi',
507
+ artifactId: 'OrdersEvents-ASYNCAPI',
508
+ version: '2.0.0',
509
+ // Use the AsyncAPI generator to process the specification
510
+ generator: ['@eventcatalog/generator-asyncapi', {
511
+ // Pass options to the AsyncAPI generator if needed
512
+ }]
513
+ }
514
+ ],
515
+ // You can also assign schemas directly
516
+ sends: [{ events: { prefix: 'order-' }}],
517
+ receives: [{ commands: ['place-order', 'cancel-order']}],
518
+ }
519
+ ],
520
+ domain: {
521
+ id: 'orders',
522
+ name: 'Orders',
523
+ version: '1.0.0',
524
+ }
525
+ }
526
+ ]
527
+ ],
528
+ };
529
+ ```
530
+
531
+ :::tip
532
+ When using nested generators, make sure to:
533
+ 1. Install the respective plugins:
534
+ ```bash
535
+ npm install @eventcatalog/generator-openapi @eventcatalog/generator-asyncapi
536
+ ```
537
+ 2. Obtain license keys from [EventCatalog Cloud](https://eventcatalog.cloud) (14-day free trial available)
538
+ 3. Add the license keys to your `.env` file:
539
+ ```bash
540
+ EVENTCATALOG_LICENSE_KEY_OPENAPI=your-openapi-license-key
541
+ EVENTCATALOG_LICENSE_KEY_ASYNCAPI=your-asyncapi-license-key
542
+ ```
543
+
544
+ See [OpenAPI Plugin Docs](/docs/plugins/openapi/intro) | [AsyncAPI Plugin Docs](/docs/plugins/asyncapi/intro) for more information.
545
+ :::
546
+
547
+ </details>
548
+
549
+ <details>
550
+ <summary>Example configuration - Service relationships with writesTo and readsFrom</summary>
551
+
552
+ In this example we document service-to-service relationships using `writesTo` and `readsFrom` to show how services interact with each other.
553
+
554
+ ```js title="eventcatalog.config.js"
555
+ // ...rest of eventcatalog.config.js file
556
+ generators: [
557
+ [
558
+ '@eventcatalog/generator-apicurio',
559
+ {
560
+ // The URL of your Apicurio Registry
561
+ registryUrl: 'http://localhost:8080',
562
+ // The services to assign schemas to
563
+ services: [
564
+ {
565
+ id: 'Orders Service',
566
+ version: '1.0.0',
567
+ sends: [{ events: { prefix: 'order-' }}],
568
+ receives: [{ commands: ['place-order', 'cancel-order']}],
569
+ // This service writes to Inventory Service and Notifications Service
570
+ writesTo: [
571
+ { id: 'Inventory Service', version: '1.0.0' },
572
+ { id: 'Notifications Service', version: '1.0.0' }
573
+ ]
574
+ },
575
+ {
576
+ id: 'Inventory Service',
577
+ version: '1.0.0',
578
+ sends: [{ events: { prefix: 'inventory-' }}],
579
+ // This service reads from Orders Service
580
+ readsFrom: [
581
+ { id: 'Orders Service', version: '1.0.0' }
582
+ ]
583
+ },
584
+ {
585
+ id: 'Notifications Service',
586
+ version: '1.0.0',
587
+ receives: [{ events: ['order-placed', 'order-cancelled']}],
588
+ // This service reads from Orders Service
589
+ readsFrom: [
590
+ { id: 'Orders Service', version: '1.0.0' }
591
+ ]
592
+ }
593
+ ],
594
+ domain: {
595
+ id: 'orders',
596
+ name: 'Orders',
597
+ version: '1.0.0',
598
+ }
599
+ }
600
+ ]
601
+ ],
602
+ };
603
+ ```
604
+
605
+ This configuration will create service relationships in EventCatalog, making it easier to visualize and understand how services communicate with each other.
606
+
607
+ </details>
608
+
609
+ <details>
610
+ <summary>Example configuration - Multiple domains with version management</summary>
611
+
612
+ In this example we configure the plugin multiple times to document different domains, and we use `includeAllVersions` to track schema evolution.
613
+
614
+ :::info "Why configure the plugin multiple times?"
615
+ The generator can be configured as many times as you want.
616
+ In this example we configure the plugin twice, once for each domain.
617
+ :::
618
+
619
+ ```js title="eventcatalog.config.js"
620
+ // ...rest of eventcatalog.config.js file
621
+ generators: [
622
+ // Retail domain
623
+ [
624
+ '@eventcatalog/generator-apicurio',
625
+ {
626
+ registryUrl: 'http://localhost:8080',
627
+ includeAllVersions: true,
628
+ services: [
629
+ {
630
+ id: 'Orders Service',
631
+ version: '1.0.0',
632
+ sends: [{ events: { prefix: 'order-' }}],
633
+ receives: [{ commands: ['place-order', 'cancel-order']}],
634
+ },
635
+ {
636
+ id: 'Inventory Service',
637
+ version: '1.0.0',
638
+ sends: [{ events: { prefix: 'inventory-' }}],
639
+ receives: [{ events: { prefix: 'order-' }}],
640
+ },
641
+ ],
642
+ domain: {
643
+ id: 'retail',
644
+ name: 'Retail',
645
+ version: '1.0.0',
646
+ }
647
+ },
648
+ ],
649
+ // Communications domain
650
+ [
651
+ '@eventcatalog/generator-apicurio',
652
+ {
653
+ registryUrl: 'http://localhost:8080',
654
+ includeAllVersions: true,
655
+ services: [
656
+ {
657
+ id: 'Notifications Service',
658
+ version: '1.0.0',
659
+ receives: [
660
+ { events: ['user-registered']},
661
+ { events: ['order-placed']},
662
+ { events: ['shipment-created']},
663
+ ],
664
+ },
665
+ ],
666
+ domain: {
667
+ id: 'communications',
668
+ name: 'Communications',
669
+ version: '1.0.0',
670
+ }
671
+ },
672
+ ],
673
+ ],
674
+ };
675
+ ```
676
+
677
+ </details>
678
+
679
+ ## Need help?
680
+
681
+ If you have questions or need help, you can join our [Discord community](https://eventcatalog.dev/discord)
682
+ or refer to the [Apicurio Registry examples on GitHub](https://github.com/event-catalog/generators/tree/main/examples/generator-apicurio).