@eventcatalog/core 3.35.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 (421) 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-4SNN54V4.js} +1 -1
  6. package/dist/{chunk-NEWQKEP7.js → chunk-B7C4DHFE.js} +1 -1
  7. package/dist/{chunk-DFLUDECO.js → chunk-JEQZWJWP.js} +1 -1
  8. package/dist/{chunk-Y5O6SCX3.js → chunk-R4DR3YAH.js} +1 -1
  9. package/dist/{chunk-B2LDVIVY.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/package.json +2 -2
@@ -0,0 +1,182 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog Federation
5
+ sidebar_label: Installation
6
+ title: Installation
7
+ description: Installation of the EventCatalog Federation plugin
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+ import PluginLicense from '@site/src/components/MDX/PluginLicense';
12
+ import Beta from '@site/src/components/MDX/Beta';
13
+
14
+ <PluginLicense url="#commercial-use" />
15
+
16
+ The EventCatalog Federation plugin is designed for your [main catalog](/docs/plugins/eventcatalog-federation/configuration).
17
+
18
+ This plugin will allow you to merge multiple EventCatalog instances into a single catalog.
19
+
20
+ ## Prerequisites
21
+
22
+ - [Installed EventCatalog](/docs/development/getting-started/installation)
23
+
24
+ ## Installation
25
+
26
+ Run the command below to install the EventCatalog Federation plugin.
27
+
28
+ ```sh
29
+ npm i @eventcatalog/generator-federation
30
+ ```
31
+
32
+ ## Configuration
33
+
34
+ Configure the plugin in your `eventcatalog.config.js` file.
35
+
36
+ Add the plugin to the `generators`.
37
+
38
+ ```js title="eventcatalog.config.js"
39
+ // ...
40
+ generators: [
41
+ [
42
+ '@eventcatalog/generator-federation',
43
+ {
44
+ // Pulling information from a GitHub repository, (generator supports any Git source e.g GitLab, Bitbucket, etc)
45
+ source: 'git@github.com:event-catalog/generators.git',
46
+
47
+ // specifying the branch to pull from (default is main)
48
+ branch: 'main',
49
+
50
+ // optional (specify which files you want to copy from the repository)
51
+ copy: [
52
+ {
53
+ // importing content from the customer-experience-team catalog
54
+ content: 'examples/generator-federation/basic/customer-experience-team/services',
55
+ // specify the target path in your main catalog, here we are importing the services from the customer-experience-team catalog
56
+ destination: path.resolve(__dirname, 'services')
57
+ },
58
+ {
59
+ // importing content from the customer-experience-team catalog
60
+ content: 'examples/generator-federation/basic/customer-experience-team/teams',
61
+ // specify the target path in your main catalog, here we are importing the services from the customer-experience-team catalog
62
+ destination: path.resolve(__dirname, 'teams')
63
+ },
64
+ {
65
+ // importing content from the customer-experience-team catalog
66
+ content: 'examples/generator-federation/basic/customer-experience-team/users',
67
+ // specify the target path in your main catalog, here we are importing the services from the customer-experience-team catalog
68
+ destination: path.resolve(__dirname, 'users')
69
+ }
70
+ ],
71
+
72
+ // optional, if you want to merge and override any conflicts then set to true (default is false)
73
+ override: true,
74
+
75
+ // optional, if you want the plugin to error
76
+ // if there are duplicate resources in your
77
+ // main catalog then set to true (default is false)
78
+ enforceUniqueResources: true
79
+ },
80
+ ],
81
+ // Payment Team
82
+ // When no `copy` values are provided, the plugin will copy eventcatalog files for you.
83
+ [
84
+ '@eventcatalog/generator-federation',
85
+ {
86
+ // Pulling information from a GitHub repository
87
+ source: 'git@github.com:event-catalog/generators.git',
88
+
89
+ // specifying the directory of the eventcatalog in your project (default it the root directory)
90
+ // This example clones the generators repository, and looks for the eventcatalog in the my-project-eventcatalog directory
91
+ sourceRootDir: 'my-project-eventcatalog'
92
+
93
+ // specifying the branch to pull from (default is main)
94
+ branch: 'main',
95
+
96
+ // optional, if you want to merge and override any conflicts then set to true (default is false)
97
+ override: true,
98
+
99
+ // optional, if you want the plugin to error
100
+ // if there are duplicate resources in your
101
+ // main catalog then set to true (default is false)
102
+ enforceUniqueResources: true
103
+ },
104
+ ],
105
+ ],
106
+ ```
107
+
108
+ ### Configure license key
109
+
110
+ The EventCatalog Federation plugin requires a license key to work with EventCatalog.
111
+
112
+ You can get a trial license key from [EventCatalog Cloud](https://eventcatalog.cloud).
113
+
114
+ You have a few options for setting the license key:
115
+
116
+ 1. [Setting license key in `.env` file (recommended)](#setting-license-key-in-env-file-recommended)
117
+ 2. [Setting license key in eventcatalog.config.js](#setting-license-key-in-eventcatalogconfigjs)
118
+
119
+ #### 1. Setting license key in `.env` file (recommended)
120
+
121
+ <AddedIn version="2.35.4" />
122
+
123
+ Create a `.env` file in the root of your project and add the following:
124
+
125
+ ```bash title=".env"
126
+ EVENTCATALOG_LICENSE_KEY_FEDERATION=your-license-key
127
+ ```
128
+
129
+ :::tip Using an older version of EventCatalog?
130
+
131
+ 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.
132
+
133
+ ```bash title="Setting license key in environment variables"
134
+ export EVENTCATALOG_LICENSE_KEY_FEDERATION=your-license-key
135
+ ```
136
+
137
+ :::
138
+
139
+ #### 2. Setting license key in eventcatalog.config.js
140
+
141
+ If you prefer, you can set the license key in the `eventcatalog.config.js` file
142
+ using the `licenseKey` property in the EventCatalog Federation plugin.
143
+
144
+ ```js title="eventcatalog.config.js"
145
+ export default {
146
+ generators: [
147
+ [
148
+ '@eventcatalog/generator-federation',
149
+ {
150
+ licenseKey: '[INSERT_YOUR_LICENSE_KEY]', // or process.env.EVENTCATALOG_LICENSE_KEY_FEDERATION
151
+ },
152
+ ],
153
+ ],
154
+ };
155
+ ```
156
+
157
+ #### White listing EventCatalog domains
158
+
159
+ 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.
160
+
161
+ ## Run the generator
162
+
163
+ Once you have configured the plugin and license key you can run the generator.
164
+
165
+ ```sh
166
+ npm run generate
167
+ ```
168
+
169
+ ## View your catalog
170
+
171
+ Run your catalog locally to see the changes.
172
+
173
+ ```sh
174
+ npm run dev
175
+ ```
176
+
177
+ ## Any questions or need help?
178
+
179
+ If you get stuck, find an issue or need help, please raise an issue on [GitHub](https://github.com/event-catalog/eventcatalog/issues) or join our [Discord community](https://eventcatalog.dev/discord).
180
+
181
+
182
+
@@ -0,0 +1,208 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog Federation
5
+ sidebar_label: Plugin Configuration
6
+ title: Plugin Configuration
7
+ description: Configuration of the EventCatalog Federation plugin
8
+ ---
9
+
10
+ API Configuration for the EventCatalog Federation plugin
11
+
12
+
13
+
14
+ ## Overview
15
+
16
+ The EventCatalog Federation plugin is configured in the `eventcatalog.config.js` file inside the `generators` array.
17
+
18
+ ## Configuration Options
19
+
20
+ | Option | Type | Required | Default | Description |
21
+ |--------|------|----------|---------|-------------|
22
+ | `source` | string | Yes | - | Git repository URL (supports any git provider e.g GitHub, GitLab, Bitbucket) |
23
+ | `sourceRootDir` | string | No | - | The root directory for your files. For example if your repository is organized with subdirectories, you can specify the root directory to use for the import (e.g `'my-awesome-catalog'`, would be the root directory for the import). |
24
+ | `branch` | string | No | `'main'` | Branch to use for the import. Default is `'main'`. |
25
+ | `copy` | object | No | - | Copy options for the import. You can pick which files to copy from the remote repository. |
26
+ | `copy.content` | string | No | - | Content to copy to the destination. |
27
+ | `copy.destination` | string | No | - | Destination path to copy the content to. |
28
+ | `debug` | boolean | No | `false` | Enable debug mode. |
29
+ | `override` | boolean | No | `false` | Override existing files in the destination. |
30
+ | `destination` | string | No | - | Destination path to copy the content to, if you don't specify the `copy` option, the content will be copied to the root of the destination path. |
31
+ | `enforceUniqueResources` | boolean | No | `false` | Setting to true. The plugin will enforce unique resources in the destination and error if any resources are not unique. |
32
+
33
+ ## Example Configuration
34
+
35
+ ```js title="eventcatalog.config.js"
36
+ import path from "path";
37
+ import url from "url";
38
+
39
+ const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
40
+
41
+ /** @type {import('@eventcatalog/core/bin/eventcatalog.config').Config} */
42
+ export default {
43
+ cId: "10b46030-5736-4600-8254-421c3ed56e47",
44
+ title: "MetaRetail Inc",
45
+ tagline: "Fake Retail Company for EventCatalog Demo",
46
+ organizationName: "MetaRetail Inc",
47
+ homepageLink: "https://eventcatalog.dev/",
48
+ editUrl: "https://github.com/boyney123/eventcatalog-demo/edit/master",
49
+ // By default set to false, add true to get urls ending in /
50
+ trailingSlash: false,
51
+ // Change to make the base url of the site different, by default https://{website}.com/docs,
52
+ // changing to /company would be https://{website}.com/company/docs,
53
+ base: "/",
54
+ // Customize the logo, add your logo to public/ folder
55
+ logo: {
56
+ alt: "EventCatalog Logo",
57
+ src: "/logo.png",
58
+ text: "MetaRetail Inc",
59
+ },
60
+ docs: {
61
+ sidebar: {
62
+ // Should the sub heading be rendered in the docs sidebar?
63
+ showPageHeadings: true,
64
+ },
65
+ },
66
+ generators: [
67
+ [
68
+ '@eventcatalog/generator-federation',
69
+ {
70
+ // Pulling information from a GitHub repository
71
+ source: 'git@github.com:event-catalog/generators.git',
72
+
73
+ // specifying the branch to pull from (default is main)
74
+ branch: 'main',
75
+
76
+ // specify which files you want to copy from the repository
77
+ copy: [
78
+ {
79
+ // importing content from the customer-experience-team catalog
80
+ content: 'examples/generator-federation/basic/customer-experience-team/services',
81
+ // specify the target path in your main catalog, here we are importing the services from the customer-experience-team catalog
82
+ destination: path.resolve(__dirname, 'services')
83
+ },
84
+ {
85
+ // importing content from the customer-experience-team catalog
86
+ content: 'examples/generator-federation/basic/customer-experience-team/teams',
87
+ // specify the target path in your main catalog, here we are importing the services from the customer-experience-team catalog
88
+ destination: path.resolve(__dirname, 'teams')
89
+ },
90
+ {
91
+ // importing content from the customer-experience-team catalog
92
+ content: 'examples/generator-federation/basic/customer-experience-team/users',
93
+ // specify the target path in your main catalog, here we are importing the services from the customer-experience-team catalog
94
+ destination: path.resolve(__dirname, 'users')
95
+ }
96
+ ],
97
+
98
+ // optional, if you want to merge and override any conflicts then set to true (default is false)
99
+ override: true,
100
+
101
+ // optional, if you want the plugin to error
102
+ // if there are duplicate resources in your
103
+ // main catalog then set to true (default is false)
104
+ enforceUniqueResources: true
105
+ },
106
+ ],
107
+ // Payment Team
108
+ [
109
+ '@eventcatalog/generator-federation',
110
+ {
111
+ // Pulling information from a GitHub repository
112
+ source: 'git@github.com:event-catalog/generators.git',
113
+
114
+ // specifying the branch to pull from (default is main)
115
+ branch: 'main',
116
+
117
+ // specify which files you want to copy from the repository
118
+ copy: [
119
+ {
120
+ // importing content from the payment-team catalog
121
+ content: 'examples/generator-federation/basic/payment-team/services',
122
+ // specify the target path in your main catalog, here we are importing the services from the payment-team catalog
123
+ destination: path.resolve(__dirname, 'services')
124
+ },
125
+ {
126
+ // importing content from the payment-team catalog
127
+ content: 'examples/generator-federation/basic/payment-team/teams',
128
+ // specify the target path in your main catalog, here we are importing the services from the payment-team catalog
129
+ destination: path.resolve(__dirname, 'teams')
130
+ },
131
+ {
132
+ // importing content from the payment-team catalog
133
+ content: 'examples/generator-federation/basic/payment-team/users',
134
+ // specify the target path in your main catalog, here we are importing the services from the payment-team catalog
135
+ destination: path.resolve(__dirname, 'users')
136
+ }
137
+ ],
138
+
139
+ // optional, if you want to merge and override any conflicts then set to true (default is false)
140
+ override: true,
141
+
142
+ // optional, if you want the plugin to error
143
+ // if there are duplicate resources in your
144
+ // main catalog then set to true (default is false)
145
+ enforceUniqueResources: true
146
+ },
147
+ ],
148
+ [
149
+ '@eventcatalog/generator-federation',
150
+ {
151
+ // Pulling information from a GitHub repository
152
+ source: 'git@github.com:event-catalog/generators.git',
153
+
154
+ // specifying the branch to pull from (default is main)
155
+ branch: 'main',
156
+
157
+ // specify which files you want to copy from the repository
158
+ copy: [
159
+ {
160
+ // importing content from the order-management-team catalog
161
+ content: 'examples/generator-federation/basic/order-management-team/services',
162
+ // specify the target path in your main catalog, here we are importing the services from the order-management-team catalog
163
+ destination: path.resolve(__dirname, 'services')
164
+ },
165
+ {
166
+ // importing content from the order-management-team catalog
167
+ content: 'examples/generator-federation/basic/order-management-team/teams',
168
+ // specify the target path in your main catalog, here we are importing the services from the order-management-team catalog
169
+ destination: path.resolve(__dirname, 'teams')
170
+ },
171
+ {
172
+ // importing content from the order-management-team catalog
173
+ content: 'examples/generator-federation/basic/order-management-team/users',
174
+ // specify the target path in your main catalog, here we are importing the services from the order-management-team catalog
175
+ destination: path.resolve(__dirname, 'users')
176
+ }
177
+ ],
178
+
179
+ // optional, if you want to merge and override any conflicts then set to true (default is false)
180
+ override: true,
181
+
182
+ // optional, if you want the plugin to error
183
+ // if there are duplicate resources in your
184
+ // main catalog then set to true (default is false)
185
+ enforceUniqueResources: true
186
+ },
187
+ ],
188
+ ],
189
+ };
190
+ ```
191
+
192
+ You can view an example configuration in the [EventCatalog Federation plugin GitHub repository](https://github.com/event-catalog/generators/blob/main/examples/generator-federation/basic/central-catalog/eventcatalog.config.js).
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
@@ -0,0 +1,15 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - components
5
+ sidebar_label: Examples
6
+ title: Examples
7
+ description: Examples of using the Federation plugin
8
+ ---
9
+
10
+ You can find many examples of using the Federation plugin in the [EventCatalog GitHub repository](https://github.com/event-catalog/generators).
11
+
12
+ ## Examples
13
+
14
+ - [Federation Example](https://github.com/event-catalog/generators/tree/main/examples/generator-federation/basic)
15
+ - An example of merging multiple catalogs into a single catalog from different teams.
@@ -0,0 +1,193 @@
1
+ ---
2
+ keywords:
3
+ - EventCatalog components
4
+ sidebar_label: Configuring main catalog
5
+ title: Setup main catalog
6
+ description: Configuring federation in your EventCatalog
7
+ ---
8
+
9
+ import AddedIn from '@site/src/components/MDX/AddedIn';
10
+ import PluginLicense from '@site/src/components/MDX/PluginLicense';
11
+ import Beta from '@site/src/components/MDX/Beta';
12
+
13
+ <!-- <Beta /> -->
14
+ <AddedIn version="2.18.0" />
15
+ <PluginLicense url="/docs/development/guides/custom-components%20copy/introduction#commercial-use" />
16
+
17
+ EventCatalog Federation is powered by the [EventCatalog Federation Generator](https://github.com/event-catalog/generators), this let's you define the repositories you want to merge into your main catalog.
18
+
19
+ ### Getting started
20
+
21
+ If you haven't already, you will need to create a new EventCatalog instance that will be your main catalog, this will be the one you will use to generate your documentation and host your documentation for your users.
22
+
23
+ You can create a new empty EventCatalog instance using the `eventcatalog` CLI.
24
+
25
+ ```bash
26
+ npx @eventcatalog/create-eventcatalog@latest main-catalog --empty
27
+ ```
28
+
29
+ Next you will need to install the `federation` generator (in your main catalog).
30
+
31
+ ```bash
32
+ npm install @eventcatalog/generator-federation
33
+ ```
34
+
35
+ #### Configuring the federation generator
36
+
37
+ You need to configure the federation generator in your main catalog, this is done by adding the generator to the `generators` section of your `eventcatalog.config.js` file.
38
+
39
+ Using the federation generator you need to specify:
40
+
41
+ - The source repository to pull from (your teams catalogs)
42
+ - The branch to pull from (default is `main`)
43
+ - The files to copy from the source repository to your main catalog
44
+ - If you want to override any conflicts (`last-write-wins`)
45
+ - If you want the plugin to error if there are duplicate resources in your main catalog
46
+
47
+ Here is an example of how you can configure the federation generator.
48
+ This demo shows:
49
+
50
+ - Pulling information from a GitHub repository
51
+ - Pulling information from a GitLab repository
52
+ - Copying files from the source repository to your main catalog
53
+ - Overriding any conflicts (`last-write-wins`)
54
+ - Enforcing unique resources in your main catalog
55
+
56
+ ```js
57
+ import path from 'path';
58
+ import url from 'url';
59
+
60
+ const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
61
+
62
+ /** @type {import('@eventcatalog/core/bin/eventcatalog.config').Config} */
63
+ export default {
64
+ cId: 'fe4efb73-11db-4bea-ad2b-d7e1d424a0c1',
65
+ title: 'OurLogix',
66
+ tagline: 'A comprehensive logistics and shipping management company',
67
+ organizationName: 'OurLogix',
68
+ homepageLink: 'https://eventcatalog.dev/',
69
+ landingPage: '',
70
+ editUrl: 'https://github.com/boyney123/eventcatalog-demo/edit/master',
71
+ trailingSlash: false,
72
+ base: '/',
73
+ logo: {
74
+ alt: 'EventCatalog Logo',
75
+ src: '/logo.png',
76
+ text: 'OurLogix',
77
+ },
78
+ docs: {
79
+ sidebar: {
80
+ showPageHeadings: true,
81
+ },
82
+ },
83
+ // Add the federation generator to your main catalog
84
+ generators: [
85
+ [
86
+ '@eventcatalog/generator-federation',
87
+ {
88
+ // Pulling information from a GitHub repository (this would be your teams catalogs)
89
+ source: 'git@github.com:event-catalog/eventcatalog.git',
90
+
91
+ // specifying the branch to pull from (default is main)
92
+ branch: 'main',
93
+
94
+ // specify which files you want to copy from the repository
95
+ copy: [
96
+ {
97
+ // specify the path in the external catalog
98
+ content: 'examples/default/components',
99
+
100
+ // specify the target path in your main catalog
101
+ destination: path.resolve(__dirname, 'components')
102
+ },
103
+ {
104
+ // specify the path in the external catalog
105
+ content: 'examples/default/domains/Orders/services',
106
+
107
+ // specify the target path in your main catalog
108
+ destination: path.resolve(__dirname, 'services')
109
+ },
110
+ {
111
+ // specify the path in the external catalog
112
+ content: 'examples/default/teams',
113
+
114
+ // specify the target path in your main catalog
115
+ destination: path.resolve(__dirname, 'teams')
116
+ },
117
+ {
118
+ // specify the path in the external catalog
119
+ content: 'examples/default/domains/Payment/services',
120
+
121
+ // specify the target path in your main catalog
122
+ destination: path.resolve(__dirname, 'services')
123
+ }
124
+ ],
125
+
126
+ // optional, if you want to merge and override any conflicts then set to true (default is false)
127
+ override: true,
128
+
129
+ // optional, if you want the plugin to error
130
+ // if there are duplicate resources in your
131
+ // main catalog then set to true (default is false)
132
+ enforceUniqueResources: true
133
+ },
134
+ ],
135
+ [
136
+ // This example does not specify the files to copy, the plugin will find all the files in the repository and copy them to your main catalog
137
+ '@eventcatalog/generator-federation',
138
+ {
139
+ // Pulling information from a GitLab repository, it will check for events, queries, domains, services, teams, etc
140
+ // Any matching files will be copied to your main catalog
141
+ source: 'git@gitlab.com:boyneyy123/eventcatalog-gitlab-example.git',
142
+ branch: 'main',
143
+ destination: path.resolve(__dirname),
144
+ override: true,
145
+ enforceUniqueResources: true
146
+ },
147
+ ],
148
+ ],
149
+ };
150
+
151
+ ```
152
+
153
+ Generator options:
154
+
155
+ - `source` - The source repository to pull from (required)
156
+ - `branch` - The branch to pull from (default is `main`)
157
+ - `copy` - The files to copy from the source repository to your main catalog (optional, if not specified the plugin will find all the files in the repository and copy them to your main catalog)
158
+ - `override` - If you want to override any conflicts (`last-write-wins`) (default is `false`)
159
+ - `enforceUniqueResources` - If you want the plugin to error if there are duplicate resources in your main catalog (default is `false`).
160
+
161
+ If you want to learn more about the federation generator you can read the [EventCatalog Federation Generator documentation](https://github.com/event-catalog/generators).
162
+
163
+ ### Running the generator
164
+
165
+ You will need a license key to run the generator, you can get a free 14 day trial license key from [EventCatalog Cloud](https://eventcatalog.cloud).
166
+
167
+ Once you have configured the federation generator you can run the generator.
168
+
169
+ Inside your main catalog run the following command:
170
+
171
+ ```bash
172
+ npm run generate
173
+ ```
174
+
175
+ This will generate the resources from the source repositories and copy them to your main catalog and handle any conflicts if you have configured the generator to do so.
176
+
177
+ :::tip Combining multiple generators
178
+ EventCatalog offers other plugins including [AsyncAPI](/docs/plugins/asyncapi/intro) and [OpenAPI](/docs/plugins/openapi/intro) plugins. You can combine generators to pull information from multiple sources and generate your documentation.
179
+ :::
180
+
181
+ ### Authentication
182
+
183
+ The federation generator uses `git` under the hood, so you will need to ensure you have the correct authentication setup for your git provider on the machine you are running the generator on.
184
+
185
+ ### View demo
186
+
187
+ You can view and run a demo of the federation generator on GitHub.
188
+
189
+ - [View demo](https://github.com/event-catalog/generators/tree/main/examples/generator-federation/basic)
190
+
191
+ ### Need help or got a question?
192
+
193
+ If you need help or got a question, please [create an issue](https://github.com/event-catalog/eventcatalog/issues/new) or [join the community on Discord](https://eventcatalog.dev/discord).