@eventcatalog/core 3.34.0 → 3.35.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 (431) 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-K5AM6PPU.js → chunk-4SNN54V4.js} +1 -1
  6. package/dist/{chunk-623CFR4T.js → chunk-B7C4DHFE.js} +1 -1
  7. package/dist/{chunk-BJWMR3ZH.js → chunk-JEQZWJWP.js} +1 -1
  8. package/dist/{chunk-PP7EDIPX.js → chunk-R4DR3YAH.js} +1 -1
  9. package/dist/{chunk-IO6EMN5C.js → chunk-VJ357XOI.js} +1 -1
  10. package/dist/constants.cjs +1 -1
  11. package/dist/constants.js +1 -1
  12. package/dist/docs/api/01-overview.md +74 -0
  13. package/dist/docs/api/02-config.md +937 -0
  14. package/dist/docs/api/03-domain-api.md +394 -0
  15. package/dist/docs/api/04-service-api.md +368 -0
  16. package/dist/docs/api/05-command-api.md +319 -0
  17. package/dist/docs/api/06-event-api.md +318 -0
  18. package/dist/docs/api/06-query-api.md +316 -0
  19. package/dist/docs/api/08-channel-api.md +317 -0
  20. package/dist/docs/api/08-code-blocks.md +53 -0
  21. package/dist/docs/api/09-flow-api.md +362 -0
  22. package/dist/docs/api/10-entity-api.md +285 -0
  23. package/dist/docs/api/11-data-api.md +268 -0
  24. package/dist/docs/api/12-data-product-api.md +416 -0
  25. package/dist/docs/api/_category_.json +12 -0
  26. package/dist/docs/cli/channels.md +180 -0
  27. package/dist/docs/cli/commands.md +183 -0
  28. package/dist/docs/cli/custom-docs.md +78 -0
  29. package/dist/docs/cli/data-products.md +177 -0
  30. package/dist/docs/cli/data-stores.md +166 -0
  31. package/dist/docs/cli/diagrams.md +147 -0
  32. package/dist/docs/cli/domains.md +280 -0
  33. package/dist/docs/cli/entities.md +138 -0
  34. package/dist/docs/cli/events.md +186 -0
  35. package/dist/docs/cli/export.md +27 -0
  36. package/dist/docs/cli/governance.md +24 -0
  37. package/dist/docs/cli/import.md +26 -0
  38. package/dist/docs/cli/index.md +121 -0
  39. package/dist/docs/cli/messages.md +69 -0
  40. package/dist/docs/cli/queries.md +183 -0
  41. package/dist/docs/cli/services.md +266 -0
  42. package/dist/docs/cli/snapshots.md +44 -0
  43. package/dist/docs/cli/teams.md +75 -0
  44. package/dist/docs/cli/users.md +75 -0
  45. package/dist/docs/cli/utilities.md +43 -0
  46. package/dist/docs/contributing/01-overview.md +186 -0
  47. package/dist/docs/contributing/_category_.json +12 -0
  48. package/dist/docs/development/00-why-eventcatalog.md +87 -0
  49. package/dist/docs/development/01-fundamentals.md +34 -0
  50. package/dist/docs/development/01-getting-started/_category_.json +12 -0
  51. package/dist/docs/development/01-getting-started/configuration-overview.md +124 -0
  52. package/dist/docs/development/01-getting-started/develop-and-build.md +71 -0
  53. package/dist/docs/development/01-getting-started/installation.md +103 -0
  54. package/dist/docs/development/01-getting-started/project-structure.md +269 -0
  55. package/dist/docs/development/_category_.json +12 -0
  56. package/dist/docs/development/_getting-started.mdx +15 -0
  57. package/dist/docs/development/agent-resources/_category_.json +6 -0
  58. package/dist/docs/development/agent-resources/eventcatalog-skills.md +17 -0
  59. package/dist/docs/development/agent-resources/llms-full.md +17 -0
  60. package/dist/docs/development/agent-resources/llms.md +17 -0
  61. package/dist/docs/development/ask-your-architecture/01-intro.md +89 -0
  62. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +23 -0
  63. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +72 -0
  64. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +385 -0
  65. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +11 -0
  66. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +12 -0
  67. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +216 -0
  68. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +47 -0
  69. package/dist/docs/development/ask-your-architecture/04-skills/01-introduction.md +40 -0
  70. package/dist/docs/development/ask-your-architecture/04-skills/02-installation.md +60 -0
  71. package/dist/docs/development/ask-your-architecture/04-skills/_category_.json +11 -0
  72. package/dist/docs/development/ask-your-architecture/05-slack-integration/01-introduction.md +63 -0
  73. package/dist/docs/development/ask-your-architecture/05-slack-integration/02-slack-app-setup.md +154 -0
  74. package/dist/docs/development/ask-your-architecture/05-slack-integration/03-installation.md +169 -0
  75. package/dist/docs/development/ask-your-architecture/05-slack-integration/04-deployment.md +236 -0
  76. package/dist/docs/development/ask-your-architecture/05-slack-integration/05-usage.md +140 -0
  77. package/dist/docs/development/ask-your-architecture/05-slack-integration/06-troubleshooting.md +268 -0
  78. package/dist/docs/development/ask-your-architecture/05-slack-integration/_category_.json +12 -0
  79. package/dist/docs/development/ask-your-architecture/_category_.json +12 -0
  80. package/dist/docs/development/authentication/01-introduction.md +78 -0
  81. package/dist/docs/development/authentication/02-enabling-authentication.md +152 -0
  82. package/dist/docs/development/authentication/07-rbac-middleware.md +269 -0
  83. package/dist/docs/development/authentication/_category_.json +11 -0
  84. package/dist/docs/development/authentication/providers/03-setting-up-github.md +83 -0
  85. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +92 -0
  86. package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +100 -0
  87. package/dist/docs/development/authentication/providers/05-setting-up-okta.md +105 -0
  88. package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +106 -0
  89. package/dist/docs/development/authentication/providers/_category_.json +11 -0
  90. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +48 -0
  91. package/dist/docs/development/bring-your-own-documentation/_category_.json +12 -0
  92. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +60 -0
  93. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +207 -0
  94. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +46 -0
  95. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +45 -0
  96. package/dist/docs/development/bring-your-own-documentation/custom-pages/_category_.json +11 -0
  97. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +34 -0
  98. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +143 -0
  99. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +68 -0
  100. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +45 -0
  101. package/dist/docs/development/bring-your-own-documentation/resource-docs/_category_.json +11 -0
  102. package/dist/docs/development/components/04-snippets.md +134 -0
  103. package/dist/docs/development/components/05-using-components.md +67 -0
  104. package/dist/docs/development/components/07-resource-references.md +136 -0
  105. package/dist/docs/development/components/_category_.json +12 -0
  106. package/dist/docs/development/components/components/01-accordian.md +41 -0
  107. package/dist/docs/development/components/components/02-accordian-group.md +57 -0
  108. package/dist/docs/development/components/components/03-admonitions.md +43 -0
  109. package/dist/docs/development/components/components/04-attachments.md +56 -0
  110. package/dist/docs/development/components/components/05-channel-information.md +29 -0
  111. package/dist/docs/development/components/components/06-design.md +66 -0
  112. package/dist/docs/development/components/components/07-entitymap.md +71 -0
  113. package/dist/docs/development/components/components/08-flow.md +46 -0
  114. package/dist/docs/development/components/components/09-link.md +32 -0
  115. package/dist/docs/development/components/components/10-mermaid-file-loader.md +63 -0
  116. package/dist/docs/development/components/components/11-message-table.md +43 -0
  117. package/dist/docs/development/components/components/12-nodegraph.md +167 -0
  118. package/dist/docs/development/components/components/13-openapi.md +55 -0
  119. package/dist/docs/development/components/components/14-prompt.md +69 -0
  120. package/dist/docs/development/components/components/15-remote-schema.md +174 -0
  121. package/dist/docs/development/components/components/16-resource-group-table.md +86 -0
  122. package/dist/docs/development/components/components/17-resource-link.md +57 -0
  123. package/dist/docs/development/components/components/18-schema.md +44 -0
  124. package/dist/docs/development/components/components/19-schema-viewer.md +69 -0
  125. package/dist/docs/development/components/components/20-steps.md +83 -0
  126. package/dist/docs/development/components/components/21-tabs.md +55 -0
  127. package/dist/docs/development/components/components/22-tiles.md +53 -0
  128. package/dist/docs/development/components/components/23-visibility.md +61 -0
  129. package/dist/docs/development/components/components/_category_.json +12 -0
  130. package/dist/docs/development/components/diagram-syntax/01-mermaid.md +218 -0
  131. package/dist/docs/development/components/diagram-syntax/02-plantuml.md +140 -0
  132. package/dist/docs/development/components/diagram-syntax/03-structurizr.md +24 -0
  133. package/dist/docs/development/components/diagram-syntax/04-icepanel.md +75 -0
  134. package/dist/docs/development/components/diagram-syntax/_category_.json +12 -0
  135. package/dist/docs/development/components/external-diagram-embeds/01-miro.md +64 -0
  136. package/dist/docs/development/components/external-diagram-embeds/02-lucid.md +47 -0
  137. package/dist/docs/development/components/external-diagram-embeds/03-drawio.md +46 -0
  138. package/dist/docs/development/components/external-diagram-embeds/04-figjam.md +44 -0
  139. package/dist/docs/development/components/external-diagram-embeds/05-icepanel.md +68 -0
  140. package/dist/docs/development/components/external-diagram-embeds/_category_.json +12 -0
  141. package/dist/docs/development/customization/01-customize-landing-page.md +155 -0
  142. package/dist/docs/development/customization/02-themes.md +429 -0
  143. package/dist/docs/development/customization/06-customize-tables.md +194 -0
  144. package/dist/docs/development/customization/_category_.json +12 -0
  145. package/dist/docs/development/customization/custom-components/00-what-is-mdx.md +73 -0
  146. package/dist/docs/development/customization/custom-components/01-introduction.md +28 -0
  147. package/dist/docs/development/customization/custom-components/02-adding-components.md +145 -0
  148. package/dist/docs/development/customization/custom-components/03-component-styling.md +27 -0
  149. package/dist/docs/development/customization/custom-components/04-javascript-components.md +32 -0
  150. package/dist/docs/development/customization/custom-components/_category_.json +11 -0
  151. package/dist/docs/development/customization/customize-sidebars/00-application-sidebar.md +45 -0
  152. package/dist/docs/development/customization/customize-sidebars/01-documentation-sidebar.md +187 -0
  153. package/dist/docs/development/customization/customize-sidebars/_category_.json +11 -0
  154. package/dist/docs/development/customization/customize-visualizer/00-visualizer-nodes.md +50 -0
  155. package/dist/docs/development/customization/customize-visualizer/_category_.json +11 -0
  156. package/dist/docs/development/deployment/_category_.json +12 -0
  157. package/dist/docs/development/deployment/build-and-deploy.md +71 -0
  158. package/dist/docs/development/deployment/build-ssr-mode.md +50 -0
  159. package/dist/docs/development/deployment/deployment-workflows.md +43 -0
  160. package/dist/docs/development/deployment/hosting-options.md +112 -0
  161. package/dist/docs/development/deployment/licenses.md +50 -0
  162. package/dist/docs/development/design/_category_.json +12 -0
  163. package/dist/docs/development/design/embed-designs-into-eventcatalog.md +29 -0
  164. package/dist/docs/development/design/further-reading.md +19 -0
  165. package/dist/docs/development/design/import-resources.md +27 -0
  166. package/dist/docs/development/design/intro.md +22 -0
  167. package/dist/docs/development/developer-tools/_category_.json +12 -0
  168. package/dist/docs/development/developer-tools/eventcatalog-linter.md +597 -0
  169. package/dist/docs/development/developer-tools/github-action.md +147 -0
  170. package/dist/docs/development/developer-tools/llms.txt.md +55 -0
  171. package/dist/docs/development/developer-tools/schemas.txt.md +42 -0
  172. package/dist/docs/development/governance/_category_.json +6 -0
  173. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +62 -0
  174. package/dist/docs/development/governance/architecture-change-detection/02-configuration.md +134 -0
  175. package/dist/docs/development/governance/architecture-change-detection/03-recipes.md +309 -0
  176. package/dist/docs/development/governance/architecture-change-detection/04-webhooks.md +187 -0
  177. package/dist/docs/development/governance/architecture-change-detection/05-ci-cd.md +121 -0
  178. package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +162 -0
  179. package/dist/docs/development/governance/architecture-change-detection/_category_.json +6 -0
  180. package/dist/docs/development/guides/12-customize-your-sidebar.md +12 -0
  181. package/dist/docs/development/guides/99-adding-analytics.md +138 -0
  182. package/dist/docs/development/guides/_category_.json +11 -0
  183. package/dist/docs/development/guides/changelogs/01-introduction.md +33 -0
  184. package/dist/docs/development/guides/changelogs/02-adding-changelogs.md +94 -0
  185. package/dist/docs/development/guides/changelogs/03-automated-changelogs.md +44 -0
  186. package/dist/docs/development/guides/changelogs/_category_.json +11 -0
  187. package/dist/docs/development/guides/channels/01-introduction.md +111 -0
  188. package/dist/docs/development/guides/channels/02-adding-channels.md +198 -0
  189. package/dist/docs/development/guides/channels/04-adding-messages-to-services.md +292 -0
  190. package/dist/docs/development/guides/channels/09-configuration +39 -0
  191. package/dist/docs/development/guides/channels/_category_.json +11 -0
  192. package/dist/docs/development/guides/channels/ownership-and-components/01-owners.md +44 -0
  193. package/dist/docs/development/guides/channels/ownership-and-components/02-components.md +16 -0
  194. package/dist/docs/development/guides/channels/ownership-and-components/_category_.json +11 -0
  195. package/dist/docs/development/guides/channels/versioning-and-lifecycle/01-versioning.md +31 -0
  196. package/dist/docs/development/guides/channels/versioning-and-lifecycle/02-changelog.md +56 -0
  197. package/dist/docs/development/guides/channels/versioning-and-lifecycle/_category_.json +11 -0
  198. package/dist/docs/development/guides/data/01-introduction.md +34 -0
  199. package/dist/docs/development/guides/data/02-adding-data.md +86 -0
  200. package/dist/docs/development/guides/data/03a-adding-schemas-to-data-stores.md +73 -0
  201. package/dist/docs/development/guides/data/_category_.json +11 -0
  202. package/dist/docs/development/guides/data/ownership-and-components/01-owners.md +45 -0
  203. package/dist/docs/development/guides/data/ownership-and-components/02-components.md +17 -0
  204. package/dist/docs/development/guides/data/ownership-and-components/_category_.json +11 -0
  205. package/dist/docs/development/guides/data/versioning-and-lifecycle/01-versioning.md +32 -0
  206. package/dist/docs/development/guides/data/versioning-and-lifecycle/02-changelog.md +57 -0
  207. package/dist/docs/development/guides/data/versioning-and-lifecycle/03-deprecating.md +71 -0
  208. package/dist/docs/development/guides/data/versioning-and-lifecycle/_category_.json +11 -0
  209. package/dist/docs/development/guides/data-products/01-introduction.md +116 -0
  210. package/dist/docs/development/guides/data-products/02-adding-data-products.md +157 -0
  211. package/dist/docs/development/guides/data-products/03-inputs-and-outputs.md +128 -0
  212. package/dist/docs/development/guides/data-products/04-contracts.md +102 -0
  213. package/dist/docs/development/guides/data-products/05-versioning.md +240 -0
  214. package/dist/docs/development/guides/data-products/06-adding-to-domains.md +52 -0
  215. package/dist/docs/development/guides/data-products/_category_.json +11 -0
  216. package/dist/docs/development/guides/diagrams/01-introduction.md +78 -0
  217. package/dist/docs/development/guides/diagrams/02-creating-diagrams.md +195 -0
  218. package/dist/docs/development/guides/diagrams/03-referencing-diagrams.md +195 -0
  219. package/dist/docs/development/guides/diagrams/04-versioning-diagrams.md +204 -0
  220. package/dist/docs/development/guides/diagrams/05-comparing-diagrams.md +145 -0
  221. package/dist/docs/development/guides/diagrams/06-diagrams-with-llms.md +165 -0
  222. package/dist/docs/development/guides/diagrams/_category_.json +10 -0
  223. package/dist/docs/development/guides/domains/01-introduction.md +22 -0
  224. package/dist/docs/development/guides/domains/02-creating-domains/02-adding-domains.md +108 -0
  225. package/dist/docs/development/guides/domains/02-creating-domains/02a-subdomains.md +84 -0
  226. package/dist/docs/development/guides/domains/02-creating-domains/03-adding-services-to-domains.md +90 -0
  227. package/dist/docs/development/guides/domains/02-creating-domains/04-adding-messages-to-domains.md +107 -0
  228. package/dist/docs/development/guides/domains/02-creating-domains/05-adding-data-products-to-domains.md +105 -0
  229. package/dist/docs/development/guides/domains/02-creating-domains/_category_.json +11 -0
  230. package/dist/docs/development/guides/domains/03-ownership-and-language/01-owners.md +36 -0
  231. package/dist/docs/development/guides/domains/03-ownership-and-language/02-adding-ubiquitous-language.md +75 -0
  232. package/dist/docs/development/guides/domains/03-ownership-and-language/_category_.json +10 -0
  233. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/01-versioning.md +40 -0
  234. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/02-changelog.md +53 -0
  235. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/_category_.json +10 -0
  236. package/dist/docs/development/guides/domains/05-entities/01-introduction.md +24 -0
  237. package/dist/docs/development/guides/domains/05-entities/02-adding-entities.md +157 -0
  238. package/dist/docs/development/guides/domains/05-entities/03-adding-entities-to-domains.md +30 -0
  239. package/dist/docs/development/guides/domains/05-entities/04-domain-entity-map.md +134 -0
  240. package/dist/docs/development/guides/domains/05-entities/_category_.json +11 -0
  241. package/dist/docs/development/guides/domains/08-domain-integration-map.md +41 -0
  242. package/dist/docs/development/guides/domains/_category_.json +11 -0
  243. package/dist/docs/development/guides/flows/01-introduction.md +36 -0
  244. package/dist/docs/development/guides/flows/02-adding-flows.md +198 -0
  245. package/dist/docs/development/guides/flows/03-flow-nodes.md +273 -0
  246. package/dist/docs/development/guides/flows/04-adding-flows-to-services.md +42 -0
  247. package/dist/docs/development/guides/flows/05-adding-flows-to-domains.md +43 -0
  248. package/dist/docs/development/guides/flows/06-versioning.md +27 -0
  249. package/dist/docs/development/guides/flows/07-create-flow-with-ai.md +171 -0
  250. package/dist/docs/development/guides/flows/_category_.json +11 -0
  251. package/dist/docs/development/guides/messages/01-overview.md +57 -0
  252. package/dist/docs/development/guides/messages/_category_.json +11 -0
  253. package/dist/docs/development/guides/messages/commands/01-introduction.md +26 -0
  254. package/dist/docs/development/guides/messages/commands/02-adding-commands.md +131 -0
  255. package/dist/docs/development/guides/messages/commands/_category_.json +11 -0
  256. package/dist/docs/development/guides/messages/common/01-map-to-producers-and-consumers.md +37 -0
  257. package/dist/docs/development/guides/messages/common/02-adding-schemas.md +58 -0
  258. package/dist/docs/development/guides/messages/common/02-deprecating.md +71 -0
  259. package/dist/docs/development/guides/messages/common/02-draft-messages.md +63 -0
  260. package/dist/docs/development/guides/messages/common/02-examples.md +99 -0
  261. package/dist/docs/development/guides/messages/common/03-owners.md +40 -0
  262. package/dist/docs/development/guides/messages/common/04-versioning.md +27 -0
  263. package/dist/docs/development/guides/messages/common/05-changelog.md +73 -0
  264. package/dist/docs/development/guides/messages/common/07-components.md +12 -0
  265. package/dist/docs/development/guides/messages/common/08-shared-messages-across-boundaries.md +70 -0
  266. package/dist/docs/development/guides/messages/common/09-grouping-messages.md +98 -0
  267. package/dist/docs/development/guides/messages/common/_category_.json +11 -0
  268. package/dist/docs/development/guides/messages/events/01-introduction.md +25 -0
  269. package/dist/docs/development/guides/messages/events/02-adding-events.md +130 -0
  270. package/dist/docs/development/guides/messages/events/_category_.json +11 -0
  271. package/dist/docs/development/guides/messages/queries/01-introduction.md +25 -0
  272. package/dist/docs/development/guides/messages/queries/02-adding-queries.md +130 -0
  273. package/dist/docs/development/guides/messages/queries/_category_.json +11 -0
  274. package/dist/docs/development/guides/owners/_category_.json +11 -0
  275. package/dist/docs/development/guides/owners/teams/01-introduction.md +21 -0
  276. package/dist/docs/development/guides/owners/teams/02-adding-teams.md +73 -0
  277. package/dist/docs/development/guides/owners/teams/_category_.json +11 -0
  278. package/dist/docs/development/guides/owners/users/01-introduction.md +20 -0
  279. package/dist/docs/development/guides/owners/users/02-adding-users.md +70 -0
  280. package/dist/docs/development/guides/owners/users/_category_.json +11 -0
  281. package/dist/docs/development/guides/schemas/01-introduction.md +64 -0
  282. package/dist/docs/development/guides/schemas/02-schema-explorer.md +74 -0
  283. package/dist/docs/development/guides/schemas/03-schema-api.md +59 -0
  284. package/dist/docs/development/guides/schemas/04-schema-mcp.md +22 -0
  285. package/dist/docs/development/guides/schemas/05-field-usage.md +120 -0
  286. package/dist/docs/development/guides/schemas/06-fields-explorer.md +120 -0
  287. package/dist/docs/development/guides/schemas/_category_.json +11 -0
  288. package/dist/docs/development/guides/services/01-introduction.md +33 -0
  289. package/dist/docs/development/guides/services/02-adding-services.md +113 -0
  290. package/dist/docs/development/guides/services/03-creating-external-systems.md +71 -0
  291. package/dist/docs/development/guides/services/_category_.json +11 -0
  292. package/dist/docs/development/guides/services/adding-to-services/01-messages.md +229 -0
  293. package/dist/docs/development/guides/services/adding-to-services/02-datastores.md +77 -0
  294. package/dist/docs/development/guides/services/adding-to-services/03-entities.md +47 -0
  295. package/dist/docs/development/guides/services/adding-to-services/04-openapi.md +97 -0
  296. package/dist/docs/development/guides/services/adding-to-services/05-asyncapi.md +97 -0
  297. package/dist/docs/development/guides/services/adding-to-services/06-graphql.md +96 -0
  298. package/dist/docs/development/guides/services/adding-to-services/_category_.json +10 -0
  299. package/dist/docs/development/guides/services/ownership-and-components/01-owners.md +41 -0
  300. package/dist/docs/development/guides/services/ownership-and-components/02-components.md +13 -0
  301. package/dist/docs/development/guides/services/ownership-and-components/_category_.json +11 -0
  302. package/dist/docs/development/guides/services/versioning-and-lifecycle/01-versioning.md +27 -0
  303. package/dist/docs/development/guides/services/versioning-and-lifecycle/02-changelog.md +52 -0
  304. package/dist/docs/development/guides/services/versioning-and-lifecycle/03-deprecating.md +70 -0
  305. package/dist/docs/development/guides/services/versioning-and-lifecycle/_category_.json +11 -0
  306. package/dist/docs/development/upgrading/_category_.json +12 -0
  307. package/dist/docs/development/upgrading/upgrading.md +142 -0
  308. package/dist/docs/development/upgrading/v2.md +69 -0
  309. package/dist/docs/development/upgrading/v3.md +277 -0
  310. package/dist/docs/miro/_category_.json +12 -0
  311. package/dist/docs/miro/contributing/01-getting-involved.md +53 -0
  312. package/dist/docs/miro/contributing/_category_.json +11 -0
  313. package/dist/docs/miro/getting-started/01-overview.md +63 -0
  314. package/dist/docs/miro/getting-started/02-installation.md +37 -0
  315. package/dist/docs/miro/getting-started/03-connecting-to-eventcatalog.md +59 -0
  316. package/dist/docs/miro/getting-started/_category_.json +11 -0
  317. package/dist/docs/miro/guides/01-adding-resources-to-board.md +90 -0
  318. package/dist/docs/miro/guides/02-creating-new-resources.md +61 -0
  319. package/dist/docs/miro/guides/03-editing-resources.md +50 -0
  320. package/dist/docs/miro/guides/04-connected-resources.md +54 -0
  321. package/dist/docs/miro/guides/05-services-and-dependencies.md +54 -0
  322. package/dist/docs/miro/guides/06-navigating-the-board.md +44 -0
  323. package/dist/docs/miro/guides/07-exporting-to-eventcatalog.md +75 -0
  324. package/dist/docs/miro/guides/_category_.json +11 -0
  325. package/dist/docs/miro/specifications/01-asyncapi.md +86 -0
  326. package/dist/docs/miro/specifications/02-openapi.md +86 -0
  327. package/dist/docs/miro/specifications/03-schema-registries.md +88 -0
  328. package/dist/docs/miro/specifications/_category_.json +11 -0
  329. package/dist/docs/miro/using-ai/01-overview.md +105 -0
  330. package/dist/docs/miro/using-ai/_category_.json +11 -0
  331. package/dist/docs/plugins/01-intro.md +49 -0
  332. package/dist/docs/plugins/02-generators.md +76 -0
  333. package/dist/docs/plugins/03-all-plugins.md +26 -0
  334. package/dist/docs/plugins/_category_.json +12 -0
  335. package/dist/docs/plugins/amazon-apigateway/00-intro.md +75 -0
  336. package/dist/docs/plugins/amazon-apigateway/01-installation.md +198 -0
  337. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +136 -0
  338. package/dist/docs/plugins/amazon-apigateway/03-features.md +71 -0
  339. package/dist/docs/plugins/amazon-apigateway/04-examples.md +15 -0
  340. package/dist/docs/plugins/amazon-apigateway/_category_.json +11 -0
  341. package/dist/docs/plugins/apicurio/00-intro.md +102 -0
  342. package/dist/docs/plugins/apicurio/01-installation.md +165 -0
  343. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +682 -0
  344. package/dist/docs/plugins/apicurio/03-features.md +221 -0
  345. package/dist/docs/plugins/apicurio/04-examples.md +20 -0
  346. package/dist/docs/plugins/apicurio/_category_.json +12 -0
  347. package/dist/docs/plugins/asyncapi/00-intro.md +81 -0
  348. package/dist/docs/plugins/asyncapi/01-installation.md +155 -0
  349. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +312 -0
  350. package/dist/docs/plugins/asyncapi/03-features.md +698 -0
  351. package/dist/docs/plugins/asyncapi/03a-workflows.md +153 -0
  352. package/dist/docs/plugins/asyncapi/04-examples.md +23 -0
  353. package/dist/docs/plugins/asyncapi/04-using-reference-objects.md +45 -0
  354. package/dist/docs/plugins/asyncapi/_category_.json +12 -0
  355. package/dist/docs/plugins/aws-glue-registry/00-intro.md +104 -0
  356. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +305 -0
  357. package/dist/docs/plugins/aws-glue-registry/01-features.md +287 -0
  358. package/dist/docs/plugins/aws-glue-registry/02-examples.md +368 -0
  359. package/dist/docs/plugins/aws-glue-registry/03-api.md +282 -0
  360. package/dist/docs/plugins/aws-glue-registry/_category_.json +11 -0
  361. package/dist/docs/plugins/azure-schema-registry/00-intro.md +92 -0
  362. package/dist/docs/plugins/azure-schema-registry/01-installation.md +409 -0
  363. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +375 -0
  364. package/dist/docs/plugins/azure-schema-registry/03-features.md +347 -0
  365. package/dist/docs/plugins/azure-schema-registry/04-examples.md +378 -0
  366. package/dist/docs/plugins/azure-schema-registry/_category_.json +12 -0
  367. package/dist/docs/plugins/backstage/00-intro.md +67 -0
  368. package/dist/docs/plugins/backstage/01-installation.md +250 -0
  369. package/dist/docs/plugins/backstage/02-api.md +51 -0
  370. package/dist/docs/plugins/backstage/03-examples.md +12 -0
  371. package/dist/docs/plugins/backstage/_category_.json +11 -0
  372. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +90 -0
  373. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +223 -0
  374. package/dist/docs/plugins/confluent-schema-registry/02-plugin-configuration.md +473 -0
  375. package/dist/docs/plugins/confluent-schema-registry/03-features.md +43 -0
  376. package/dist/docs/plugins/confluent-schema-registry/04-examples.md +19 -0
  377. package/dist/docs/plugins/confluent-schema-registry/_category_.json +12 -0
  378. package/dist/docs/plugins/eventbridge/00-intro.md +55 -0
  379. package/dist/docs/plugins/eventbridge/00a-installation.md +317 -0
  380. package/dist/docs/plugins/eventbridge/01-features.md +225 -0
  381. package/dist/docs/plugins/eventbridge/02-examples.md +17 -0
  382. package/dist/docs/plugins/eventbridge/03-api.md +441 -0
  383. package/dist/docs/plugins/eventbridge/03a-workflows.md +133 -0
  384. package/dist/docs/plugins/eventbridge/_category_.json +11 -0
  385. package/dist/docs/plugins/eventcatalog-federation/00-introduction.md +69 -0
  386. package/dist/docs/plugins/eventcatalog-federation/01-installation.md +182 -0
  387. package/dist/docs/plugins/eventcatalog-federation/02-plugin-configuration.md +208 -0
  388. package/dist/docs/plugins/eventcatalog-federation/03-examples.md +15 -0
  389. package/dist/docs/plugins/eventcatalog-federation/04-configuration.md +193 -0
  390. package/dist/docs/plugins/eventcatalog-federation/05-setup-team-catalog.md +97 -0
  391. package/dist/docs/plugins/eventcatalog-federation/_category_.json +11 -0
  392. package/dist/docs/plugins/github/00-intro.md +93 -0
  393. package/dist/docs/plugins/github/01-installation.md +293 -0
  394. package/dist/docs/plugins/github/02-plugin-configuration.md +253 -0
  395. package/dist/docs/plugins/github/03-features.md +42 -0
  396. package/dist/docs/plugins/github/04-examples.md +17 -0
  397. package/dist/docs/plugins/github/_category_.json +12 -0
  398. package/dist/docs/plugins/graphql/00-intro.md +74 -0
  399. package/dist/docs/plugins/graphql/01-installation.md +144 -0
  400. package/dist/docs/plugins/graphql/02-plugin-configuration.md +127 -0
  401. package/dist/docs/plugins/graphql/03-features.md +197 -0
  402. package/dist/docs/plugins/graphql/04-examples.md +15 -0
  403. package/dist/docs/plugins/graphql/_category_.json +12 -0
  404. package/dist/docs/plugins/hookdeck/01-intro.md +152 -0
  405. package/dist/docs/plugins/hookdeck/02-api.md +133 -0
  406. package/dist/docs/plugins/hookdeck/03-cli.md +45 -0
  407. package/dist/docs/plugins/hookdeck/_category_.json +11 -0
  408. package/dist/docs/plugins/openapi/00-intro.md +78 -0
  409. package/dist/docs/plugins/openapi/01-installation.md +148 -0
  410. package/dist/docs/plugins/openapi/02-plugin-configuration.md +332 -0
  411. package/dist/docs/plugins/openapi/03-features.md +790 -0
  412. package/dist/docs/plugins/openapi/03a-workflows.md +153 -0
  413. package/dist/docs/plugins/openapi/04-examples.md +23 -0
  414. package/dist/docs/plugins/openapi/_category_.json +12 -0
  415. package/dist/eventcatalog.cjs +1 -1
  416. package/dist/eventcatalog.js +5 -5
  417. package/dist/generate.cjs +1 -1
  418. package/dist/generate.js +3 -3
  419. package/dist/utils/cli-logger.cjs +1 -1
  420. package/dist/utils/cli-logger.js +2 -2
  421. package/eventcatalog/src/components/Search/SearchModal.tsx +23 -34
  422. package/eventcatalog/src/components/Search/search-utils.spec.ts +36 -0
  423. package/eventcatalog/src/components/Search/search-utils.ts +34 -0
  424. package/eventcatalog/src/components/SideNav/NestedSideBar/SearchBar.tsx +7 -1
  425. package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +2 -0
  426. package/eventcatalog/src/stores/sidebar-store/builders/flow.ts +77 -0
  427. package/eventcatalog/src/stores/sidebar-store/builders/message.ts +10 -1
  428. package/eventcatalog/src/stores/sidebar-store/builders/service.ts +10 -3
  429. package/eventcatalog/src/stores/sidebar-store/state.ts +126 -2
  430. package/eventcatalog/src/utils/collections/flows.ts +3 -2
  431. package/package.json +4 -4
@@ -0,0 +1,317 @@
1
+ ---
2
+ sidebar_position: 2
3
+ keywords:
4
+ - components
5
+ sidebar_label: Installation
6
+ title: Installation
7
+ description: Installation guide for the EventCatalog Amazon EventBridge plugin
8
+ id: installation
9
+ ---
10
+
11
+ import AddedIn from '@site/src/components/MDX/AddedIn';
12
+ import PluginLicense from '@site/src/components/MDX/PluginLicense';
13
+ import Tabs from '@theme/Tabs';
14
+ import TabItem from '@theme/TabItem';
15
+
16
+ <AddedIn version="2.6.0"/>
17
+
18
+ The EventBridge plugin is a generator that can be used to generate your EventCatalog from an EventBridge registry.
19
+
20
+ You can map your schemas to services, domains and messages. You can also map all events from your registry into your catalog.
21
+
22
+ ## Installation
23
+
24
+ Run the following command to install the plugin.
25
+
26
+ :::tip "Don't have an EventCatalog project yet?"
27
+ If you don't have an EventCatalog project yet, you can follow the instructions in the [Getting Started](/docs/development/getting-started/installation) guide.
28
+ :::
29
+
30
+ <Tabs>
31
+ <TabItem value="apple" label="Install on existing catalog" default>
32
+ ```bash
33
+ npm i @eventcatalog/generator-eventbridge
34
+ ```
35
+ </TabItem>
36
+ <TabItem value="orange" label="Create new catalog with the EventBridge template">
37
+ ```bash
38
+ npx @eventcatalog/create-eventcatalog@latest my-catalog --template eventbridge
39
+ ```
40
+ </TabItem>
41
+ </Tabs>
42
+
43
+
44
+ #### Configuration
45
+
46
+ Configure the plugin in your `eventcatalog.config.js` file.
47
+
48
+ Add the plugin to the `generators` array.
49
+
50
+ <Tabs>
51
+ <TabItem value="apple" label="Import all schemas" default>
52
+
53
+ ---
54
+
55
+ In this example we import all schemas from an EventBridge registry.
56
+
57
+ We don't map them to any services or domains.
58
+
59
+ ```js title="eventcatalog.config.js"
60
+ // ...
61
+ generators: [
62
+ // Import all schemas into your catalog
63
+ [
64
+ '@eventcatalog/generator-eventbridge',
65
+ {
66
+ // The region of your EventBridge registry
67
+ region: 'us-east-1',
68
+ // The name of your EventBridge registry
69
+ registryName: 'discovered-schemas'
70
+ },
71
+ ],
72
+ ],
73
+ // ...
74
+ ```
75
+ </TabItem>
76
+ <TabItem value="orange" label="Map schemas to producers and consumers">
77
+
78
+ ---
79
+
80
+ In this example we map schemas to producers and consumers (services).
81
+
82
+ Every time you run the plugin, it will check if the service already exists in your catalog.
83
+
84
+ If the service already exists, it will not create a new one and just maintain the schema mappings.
85
+
86
+ We create two services, the `orders` service and the `inventory` service.
87
+
88
+
89
+
90
+ ```js title="eventcatalog.config.js"
91
+ // ...
92
+ generators: [
93
+ [
94
+ '@eventcatalog/generator-eventbridge',
95
+ {
96
+ // The region of your EventBridge registry
97
+ region: 'us-east-1',
98
+ // The name of your EventBridge registry
99
+ registryName: 'discovered-schemas',
100
+ // Creating producers and consumers, and mapping them to your catalog
101
+ services: [
102
+
103
+ // We map schemas to the orders service
104
+ // Using the detailType we can map specific events to the service
105
+ { id: 'Orders Service', version: '1.0.0', sends: [{ detailType: ['OrderPlaced', 'OrderUpdated'], eventBusName: 'orders'}], receives:[{ detailType: "InventoryAdjusted", eventBusName: 'inventory'}] },
106
+
107
+ // Map events to the Inventory Service
108
+ // Filter by source (all events that match the source get assigned). This example shows any event matching the source
109
+ // "myapp.orders" will be assigned to the inventory service. The inventory service will publish these events.
110
+ { id: 'Inventory Service', version: '1.0.0', sends: [{ source: "myapp.orders", eventBusName: 'orders'}], receives:[{ detailType: "UserCheckedOut", eventBusName: 'inventory'}] },
111
+
112
+
113
+ // This service sends events that match the SchemaName prefixing myapp, and will receive events that end with Payment
114
+ // this also does not map any event buses to your events
115
+ { id: 'Payment Service', version: '1.0.0', sends: [{ prefix: "myapp"}], receives:[{ suffix: "Payment" }] }
116
+ ],
117
+
118
+ // all services are mapped to this domain
119
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
120
+ },
121
+ ],
122
+ ],
123
+ // ...
124
+ ```
125
+ </TabItem>
126
+ <TabItem value="orange2" label="Multiple domains, services and events">
127
+
128
+ ---
129
+
130
+ In this example we have two domains, `orders` and `inventory`.
131
+
132
+ We map schemas to the orders and inventory services, and we assign these services to new domains.
133
+
134
+ If the domain or service already exists in your catalog, the plugin will not create a new one and just maintain the schema mappings.
135
+
136
+ :::info Why do we define the plugin twice?
137
+ The plugin can be defined multiple times in your `eventcatalog.config.js` file.
138
+
139
+ In this example we define the plugin twice, the first time we import the schemas and create the `orders` domain.
140
+
141
+ The second time we map the inventory service to the `inventory` domain.
142
+ :::
143
+
144
+ ```js title="eventcatalog.config.js"
145
+ // ...
146
+ generators: [
147
+ [
148
+ '@eventcatalog/generator-eventbridge',
149
+ {
150
+ // The region of your EventBridge registry
151
+ region: 'us-east-1',
152
+ // The name of your EventBridge registry
153
+ registryName: 'discovered-schemas',
154
+ // Creating producers and consumers, and mapping them to your catalog
155
+ services: [
156
+ // We map schemas to the orders service
157
+ // Using the detailType we can map specific events to the service
158
+ { id: 'Orders Service', version: '1.0.0', sends: [{ detailType: ['OrderPlaced', 'OrderUpdated'], eventBusName: 'orders'}], receives:[{ detailType: "InventoryAdjusted", eventBusName: 'inventory'}] },
159
+ ],
160
+
161
+ // all services are mapped to this domain
162
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
163
+ },
164
+ ],
165
+ [
166
+ '@eventcatalog/generator-eventbridge',
167
+ {
168
+ region: 'us-east-1',
169
+ registryName: 'discovered-schemas',
170
+ services: [
171
+ // Create the inventory service and map schemas to it (producer/consumer relationship)
172
+ { id: 'Inventory Service', version: '1.0.0', sends: [{ source: "myapp.orders", eventBusName: 'orders'}], receives:[{ detailType: "UserCheckedOut", eventBusName: 'inventory'}] },
173
+ ],
174
+
175
+ // create the inventory domain and assign the inventory service to it
176
+ domain: { id: 'inventory', name: 'Inventory', version: '0.0.1' },
177
+ },
178
+ ],
179
+ ],
180
+ // ...
181
+ ```
182
+ </TabItem>
183
+ </Tabs>
184
+
185
+
186
+
187
+ ### Configure license key
188
+
189
+ The EventBridge plugin requires a license key to work with EventCatalog.
190
+
191
+ You can get a 14 day trial license key to try the plugin out by going to [EventCatalog Cloud](https://eventcatalog.cloud).
192
+
193
+ You have a few options for setting the license key:
194
+
195
+ 1. [Setting license key in `.env` file (recommended)](#1-setting-license-key-in-env-file-recommended)
196
+ 2. [Setting license key in eventcatalog.config.js](#2-setting-license-key-in-eventcatalogconfigjs)
197
+
198
+ #### 1. Setting license key in `.env` file (recommended)
199
+
200
+ <AddedIn version="2.35.4" />
201
+
202
+ Create a `.env` file in the root of your project and add the following:
203
+
204
+ ```bash title=".env"
205
+ EVENTCATALOG_LICENSE_KEY_EVENTBRIDGE=your-license-key
206
+ ```
207
+
208
+ :::tip Using an older version of EventCatalog?
209
+
210
+ If you are using an older version of EventCatalog that does not support the `.env` file, you can just export the license key as an environment variable.
211
+
212
+ ```bash title="Setting license key in environment variables"
213
+ export EVENTCATALOG_LICENSE_KEY_EVENTBRIDGE=your-license-key
214
+ ```
215
+
216
+ :::
217
+
218
+
219
+ #### 2. Setting license key in eventcatalog.config.js
220
+
221
+ If you prefer, you can set the license key in the `eventcatalog.config.js` file
222
+ using the `licenseKey` property in the EventCatalog EventBridge plugin.
223
+
224
+ ```js title="eventcatalog.config.js"
225
+ export default {
226
+ generators: [
227
+ [
228
+ '@eventcatalog/generator-eventbridge',
229
+ {
230
+ licenseKey: '[INSERT_YOUR_LICENSE_KEY]', // or process.env.EVENTCATALOG_LICENSE_KEY_EVENTBRIDGE
231
+ region: 'us-east-1',
232
+ registryName: 'discovered-schemas'
233
+ },
234
+ ],
235
+ ],
236
+ };
237
+ ```
238
+
239
+ #### White listing EventCatalog domains
240
+
241
+ If you are behind a firewall you will need to white list the domain `https://api.eventcatalog.cloud` in your firewall. This is because the plugin needs to verify your license key.
242
+
243
+ #### Run the plugin
244
+
245
+ _This command will run the generators in your eventcatalog.config.js file._
246
+
247
+ ```
248
+ npm run generate
249
+ ```
250
+
251
+ #### View your catalog
252
+
253
+ Run your catalog locally to see the changes
254
+
255
+ ```
256
+ npm run dev
257
+ ```
258
+
259
+ ### AWS Configuration
260
+
261
+ #### Policy for AWS
262
+
263
+ This plugin will require some read access to your Schema Registry and Versions.
264
+
265
+ It's recommended you create a new IAM user with the following policy.
266
+
267
+ ```json
268
+ {
269
+ "Version": "2012-10-17",
270
+ "Statement": [
271
+ {
272
+ "Sid": "EventCatalog",
273
+ "Effect": "Allow",
274
+ "Action": [
275
+ "schemas:ExportSchema",
276
+ "schemas:SearchSchemas",
277
+ "schemas:ListSchemas",
278
+ "schemas:ListSchemaVersions",
279
+ "schemas:DescribeSchema",
280
+ "schemas:GetDiscoveredSchema"
281
+ ],
282
+ "Resource": "*"
283
+ }
284
+ ]
285
+ }
286
+ ```
287
+
288
+
289
+ ## Commercial and License
290
+
291
+ This plugin requires a license key to be used.
292
+
293
+ You can get a 14 day trial license key to try the plugin out by going to [EventCatalog Cloud](https://eventcatalog.cloud).
294
+
295
+ After the trial you can purchase a license to continue using this plugin, we have different plans to suit your organization.
296
+
297
+ See [pricing](/pricing) for more information.
298
+
299
+ _Have any questions? You can email us at `hello@eventcatalog.dev`._
300
+
301
+ ## License FAQ
302
+
303
+ ### What is the license key for?
304
+ The license key is required to use the OpenAPI plugin with EventCatalog. It helps support ongoing development and maintenance of the plugin and project.
305
+
306
+ ### How do I get a license key?
307
+ You can obtain a license key by visiting [EventCatalog Cloud](https://eventcatalog.cloud). New users can start with a 14-day free trial.
308
+
309
+ ### Terms
310
+ - **Trial Period**: 14 days free trial no credit card required
311
+ - **Support**: Discord community support (extra for priority support)
312
+
313
+ After your trial period ends, you can purchase a full license through [EventCatalog Cloud](https://eventcatalog.cloud) to continue using the plugin.
314
+
315
+ ## Issues
316
+
317
+ If you have any problems or feature requests please feel free to raise them on GitHub. https://github.com/event-catalog/generators
@@ -0,0 +1,225 @@
1
+ ---
2
+ sidebar_position: 3
3
+ keywords:
4
+ - components
5
+ sidebar_label: Features
6
+ title: Features
7
+ description: Features of AsyncAPI with EventCatalog
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+
12
+
13
+
14
+ ### Using filters to map events to your services
15
+
16
+ EventCatalog plugin supports a range of filters:
17
+
18
+ - `suffix` - Matches anything at the end of the schema name
19
+ - `preffix` - Matches anything at the start of the schema name
20
+ - `detailType` - Exact matching on the detail type of the event
21
+ - `source` - Exact matching on the source of the events
22
+
23
+ You can use the filters to map events directly to your services, this gives you flexibility on how you want to structure your EventCatalog and map events to services.
24
+
25
+ :::tip
26
+ Filters are mapped on the registry schema name. If you are using schema-discovery this will be the `source@detailType` (e.g `myapp.test.com@OrderCreated`).
27
+ If you are using a custom registry this will be the schema name you defined for that event.
28
+ :::
29
+
30
+ **suffix example**
31
+
32
+ In this example any event in the registry that ends with `Orders` or `Inventory` will get mapped into EventCatalog.
33
+ These events will map into the Orders Service.
34
+
35
+ ```js
36
+ generators: [
37
+ [
38
+ '@eventcatalog/generator-eventbridge',
39
+ {
40
+ region: 'us-east-1',
41
+ registryName: 'discovered-schemas',
42
+ services: [
43
+ { id: 'Orders Service', version: '1.0.0', sends: [{ suffix: ['Orders'] }], receives:[{ suffix: "Inventory"}] },
44
+ ],
45
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
46
+ },
47
+ ],
48
+ ],
49
+
50
+ ```
51
+
52
+ **prefix example**
53
+
54
+ In this example all events in the registry that starts with `myapp.orders.test@Orders` or `myapp.orders.test@Inventory` will get mapped into EventCatalog.
55
+ In this example the Orders Service sends events that start with `myapp.orders.test@Orders` and receives events that start with `myapp.orders.test@Inventory`
56
+
57
+
58
+ ```js
59
+ generators: [
60
+ [
61
+ '@eventcatalog/generator-eventbridge',
62
+ {
63
+ region: 'us-east-1',
64
+ registryName: 'discovered-schemas',
65
+ services: [
66
+ { id: 'Orders Service', version: '1.0.0', sends: [{ prefix: ['myapp.orders.test@Orders']}], receives:[{ prefix: "myapp.orders.test@Inventory"}] },
67
+ ],
68
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
69
+ },
70
+ ],
71
+ ],
72
+
73
+ ```
74
+
75
+ **detailType example**
76
+
77
+ In this example all events that match the given detailType will get mapped into EventCatalog.
78
+ ```js
79
+ generators: [
80
+ [
81
+ '@eventcatalog/generator-eventbridge',
82
+ {
83
+ region: 'us-east-1',
84
+ registryName: 'discovered-schemas',
85
+ services: [
86
+ { id: 'Orders Service', version: '1.0.0', sends: [{ detailType: 'OrderCreated'}], receives:[{ detailType: ["InventoryAdjusted", "InventoryOutOfStock"]}] },
87
+ ],
88
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
89
+ },
90
+ ],
91
+ ],
92
+
93
+ ```
94
+
95
+ **source example**
96
+
97
+ In this example all events that match the given source will get mapped into EventCatalog.
98
+
99
+ This example shows the Order Service will send all events that match the source `myapp.orders` and will receives all events that match the source `myapp.inventory` and `myapp.payments`.
100
+
101
+ ```js
102
+ generators: [
103
+ [
104
+ '@eventcatalog/generator-eventbridge',
105
+ {
106
+ region: 'us-east-1',
107
+ registryName: 'discovered-schemas',
108
+ services: [
109
+ { id: 'Orders Service', version: '1.0.0', sends: [{ source: 'myapp.orders'}], receives:[{ source: ["myapp.inventory", "myapp.payments"]}] },
110
+ ],
111
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
112
+ },
113
+ ],
114
+ ],
115
+
116
+ ```
117
+
118
+ ### Using custom schema registries
119
+
120
+ EventBridge offers users the ability to create custom schema registries. This let's you create and upload new schemas to EventBridge.
121
+
122
+ This generator will support these custom registries and map events to your services based on these registries.
123
+
124
+ The mapping works slightly different with custom registries. The event name is mapped as the `source`.
125
+
126
+ Here is an example of how this works:
127
+
128
+ - Custom registry name: `custom-schemas`
129
+ - Schema Name (the service sends this event): `OrderPlaced`
130
+ - Schema Name (the service receives this event): `InventoryAdjusted`
131
+ - Schema Name (the service receives this event): `InventoryAmountUpdated`
132
+
133
+ ```yml
134
+ generators: [
135
+ [
136
+ '@eventcatalog/generator-eventbridge',
137
+ {
138
+ region: 'us-east-1',
139
+ # This is the name of your custom registry
140
+ registryName: 'custom-schemas',
141
+ services: [
142
+ # Map the name of the schema (event) into this service.
143
+ # In this example the Order Service will send an event called OrderPlaced and receive an event called InventoryAdjusted and InventoryAmountUpdated
144
+ # Note: The source value is the name of the schema in the registry, this is how AWS names the schemas in your custom registry.
145
+ { id: 'Orders Service', version: '1.0.0', sends: [{ source: 'OrderPlaced'}], receives:[{ source: ["InventoryAdjusted", "InventoryAmountUpdated"]}] },
146
+ ],
147
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
148
+ },
149
+ ],
150
+ ],
151
+ ```
152
+
153
+ ### Document Event Buses (as channels)
154
+
155
+ <AddedIn version="1.2.0" pkg="@eventcatalog/generator-eventbridge" url="https://github.com/event-catalog/generator-eventbridge/releases/tag/v"/>
156
+
157
+ EventCatalog [supports channels as resources](/docs/development/guides/channels/introduction). This let's you document your event buses in EventCatalog.
158
+
159
+ EventCatalog will use your Event Bus as a channel, the protocol for the channel is set to `eventbridge`.
160
+
161
+ This can help your developers understand and visually see that EventBridge events are published and consumed from Amazon EventBridge.
162
+
163
+ ![Example](/img/integrations/eventbridge/eventbridge-channel.png)
164
+
165
+ The channel page will be populated with quick links to your AWS console.
166
+
167
+ ![Example](/img/integrations/eventbridge/eventbridge-channel-doc.png)
168
+
169
+ #### Getting started
170
+
171
+ To document your eventbus you need to specify the `eventBusName` in your `sends` or `receives` array.
172
+
173
+ The example below shows a service that sends events from the `orders` event bus` and receives events from the `inventory` event bus.
174
+
175
+ ```md
176
+ ---
177
+ generators: [
178
+ [
179
+ '@eventcatalog/generator-eventbridge',
180
+ {
181
+ region: 'us-east-1',
182
+ registryName: 'discovered-schemas',
183
+ services: [
184
+ # Define the service, and map events the service producers/consumes
185
+ # EventBusName is used to map the producer/consumer events to an event bus
186
+ { id: 'Orders Service', version: '1.0.0', sends: [{ source: 'myapp.orders', eventBusName: "orders"}], receives:[{ source: ["myapp.inventory", "myapp.payments"], "eventBusName"}] },
187
+ ],
188
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
189
+ },
190
+ ],
191
+ ],
192
+ ---
193
+ ```
194
+
195
+ ### Persist markdown
196
+
197
+ Your markdown is persisted between generation runs on EventCatalog. Initially the generator will generate markdown for you for your domains, services and events, but any edits to the markdown file will be persisted between versions.
198
+
199
+ This allows you to add [custom components](/docs/custom-components), our [MDX components](/docs/components) and customize your EventCatalog pages without losing changes when your events are versioned.
200
+
201
+ This can be useful for adding extra additional context to your events, example payloads, example CLI commands on how to raise them and any other useful information.
202
+
203
+ ### Automatic versioning
204
+
205
+ **Schema discovery**
206
+
207
+ If you are using the schema discovery feature, then Amazon EventBridge will version the schemas for you. They version your schema using a field called `VersionCount`. This value is used and mapped to your event version. When you re-generate your catalog using this generator it will check your event versions and automatcily version your events based on these fields.
208
+
209
+ How it works
210
+
211
+ - You put and event onto a bus with discovery enabled (v1 of this event is stored in registry by EventBridge)
212
+ - You run generate for your catalog (v1 is documented in your catalog)
213
+ - You change the payload of the original event and put another event on the bus (v2 is created by EventBridge.)
214
+ - You run generate for your catalog (v1 is versioned for you, and v2 takes it place).
215
+
216
+ **Custom registry**
217
+
218
+ You can create your own custom registry with Amazon EventBridge. This let's you create and upload new schemas.
219
+
220
+ Any version changes here will get copied over into EventCatalog.
221
+
222
+
223
+ ### Downloading schemas
224
+
225
+ The generator will try and download the JSONDraft4 and OpenAPI specifications for your events from EventBridge. These files will be attached to each even in EventCatalog. Users will be able to see and download these files.
@@ -0,0 +1,17 @@
1
+ ---
2
+ sidebar_position: 4
3
+ keywords:
4
+ - components
5
+ sidebar_label: Examples
6
+ title: Examples
7
+ description: Examples of using the OpenAPI plugin
8
+ ---
9
+
10
+ You can find many examples of using the OpenAPI plugin in the [EventCatalog GitHub repository](https://github.com/event-catalog/generators).
11
+
12
+ ## Examples
13
+
14
+ - [Amazon EventBridge Example](https://github.com/event-catalog/generators/tree/main/examples/generator-eventbridge/basic)
15
+ - Pull schemas from EventBridge schema registry and map to services, domains and messages. Use custom filters to map events to services.
16
+ - [Using custom schema registry](https://github.com/event-catalog/generators/tree/main/examples/generator-eventbridge/custom-registry)
17
+ - Use a custom schema registry to store your schemas including custom filters to map events to services.