@eventcatalog/core 3.35.0 → 3.36.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/dist/analytics/analytics.cjs +1 -1
  2. package/dist/analytics/analytics.js +2 -2
  3. package/dist/analytics/log-build.cjs +1 -1
  4. package/dist/analytics/log-build.js +3 -3
  5. package/dist/{chunk-LUWCWNOR.js → chunk-6D65JSOA.js} +1 -1
  6. package/dist/{chunk-NEWQKEP7.js → chunk-C7JCOHTI.js} +1 -1
  7. package/dist/chunk-D6IBLY3O.js +320 -0
  8. package/dist/{chunk-Y5O6SCX3.js → chunk-HDENGAZL.js} +1 -1
  9. package/dist/{chunk-DFLUDECO.js → chunk-UJ7DX4SA.js} +3 -3
  10. package/dist/{chunk-3KXCGYET.js → chunk-ULZYHF3V.js} +5 -0
  11. package/dist/{chunk-B2LDVIVY.js → chunk-V22QY5Q3.js} +1 -1
  12. package/dist/constants.cjs +1 -1
  13. package/dist/constants.js +1 -1
  14. package/dist/docs/api/01-overview.md +74 -0
  15. package/dist/docs/api/02-config.md +959 -0
  16. package/dist/docs/api/03-domain-api.md +394 -0
  17. package/dist/docs/api/04-service-api.md +368 -0
  18. package/dist/docs/api/05-command-api.md +319 -0
  19. package/dist/docs/api/06-event-api.md +318 -0
  20. package/dist/docs/api/06-query-api.md +316 -0
  21. package/dist/docs/api/08-channel-api.md +317 -0
  22. package/dist/docs/api/08-code-blocks.md +53 -0
  23. package/dist/docs/api/09-flow-api.md +362 -0
  24. package/dist/docs/api/10-entity-api.md +285 -0
  25. package/dist/docs/api/11-data-api.md +268 -0
  26. package/dist/docs/api/12-data-product-api.md +416 -0
  27. package/dist/docs/api/_category_.json +12 -0
  28. package/dist/docs/cli/channels.md +180 -0
  29. package/dist/docs/cli/commands.md +183 -0
  30. package/dist/docs/cli/custom-docs.md +78 -0
  31. package/dist/docs/cli/data-products.md +177 -0
  32. package/dist/docs/cli/data-stores.md +166 -0
  33. package/dist/docs/cli/diagrams.md +147 -0
  34. package/dist/docs/cli/domains.md +280 -0
  35. package/dist/docs/cli/entities.md +138 -0
  36. package/dist/docs/cli/events.md +186 -0
  37. package/dist/docs/cli/export.md +27 -0
  38. package/dist/docs/cli/governance.md +24 -0
  39. package/dist/docs/cli/import.md +26 -0
  40. package/dist/docs/cli/index.md +121 -0
  41. package/dist/docs/cli/messages.md +69 -0
  42. package/dist/docs/cli/queries.md +183 -0
  43. package/dist/docs/cli/services.md +266 -0
  44. package/dist/docs/cli/snapshots.md +44 -0
  45. package/dist/docs/cli/teams.md +75 -0
  46. package/dist/docs/cli/users.md +75 -0
  47. package/dist/docs/cli/utilities.md +43 -0
  48. package/dist/docs/contributing/01-overview.md +186 -0
  49. package/dist/docs/contributing/_category_.json +12 -0
  50. package/dist/docs/development/00-why-eventcatalog.md +87 -0
  51. package/dist/docs/development/01-fundamentals.md +34 -0
  52. package/dist/docs/development/01-getting-started/_category_.json +12 -0
  53. package/dist/docs/development/01-getting-started/configuration-overview.md +124 -0
  54. package/dist/docs/development/01-getting-started/develop-and-build.md +71 -0
  55. package/dist/docs/development/01-getting-started/installation.md +103 -0
  56. package/dist/docs/development/01-getting-started/project-structure.md +269 -0
  57. package/dist/docs/development/_category_.json +12 -0
  58. package/dist/docs/development/_getting-started.mdx +15 -0
  59. package/dist/docs/development/agent-resources/_category_.json +6 -0
  60. package/dist/docs/development/agent-resources/eventcatalog-skills.md +17 -0
  61. package/dist/docs/development/agent-resources/llms-full.md +17 -0
  62. package/dist/docs/development/agent-resources/llms.md +17 -0
  63. package/dist/docs/development/ask-your-architecture/01-intro.md +89 -0
  64. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +23 -0
  65. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +72 -0
  66. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +385 -0
  67. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +11 -0
  68. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +12 -0
  69. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +216 -0
  70. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +47 -0
  71. package/dist/docs/development/ask-your-architecture/04-skills/01-introduction.md +40 -0
  72. package/dist/docs/development/ask-your-architecture/04-skills/02-installation.md +60 -0
  73. package/dist/docs/development/ask-your-architecture/04-skills/_category_.json +11 -0
  74. package/dist/docs/development/ask-your-architecture/05-slack-integration/01-introduction.md +63 -0
  75. package/dist/docs/development/ask-your-architecture/05-slack-integration/02-slack-app-setup.md +154 -0
  76. package/dist/docs/development/ask-your-architecture/05-slack-integration/03-installation.md +169 -0
  77. package/dist/docs/development/ask-your-architecture/05-slack-integration/04-deployment.md +236 -0
  78. package/dist/docs/development/ask-your-architecture/05-slack-integration/05-usage.md +140 -0
  79. package/dist/docs/development/ask-your-architecture/05-slack-integration/06-troubleshooting.md +268 -0
  80. package/dist/docs/development/ask-your-architecture/05-slack-integration/_category_.json +12 -0
  81. package/dist/docs/development/ask-your-architecture/_category_.json +12 -0
  82. package/dist/docs/development/authentication/01-introduction.md +78 -0
  83. package/dist/docs/development/authentication/02-enabling-authentication.md +152 -0
  84. package/dist/docs/development/authentication/07-rbac-middleware.md +269 -0
  85. package/dist/docs/development/authentication/_category_.json +11 -0
  86. package/dist/docs/development/authentication/providers/03-setting-up-github.md +83 -0
  87. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +92 -0
  88. package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +100 -0
  89. package/dist/docs/development/authentication/providers/05-setting-up-okta.md +105 -0
  90. package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +106 -0
  91. package/dist/docs/development/authentication/providers/_category_.json +11 -0
  92. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +48 -0
  93. package/dist/docs/development/bring-your-own-documentation/_category_.json +12 -0
  94. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +60 -0
  95. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +207 -0
  96. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +46 -0
  97. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +45 -0
  98. package/dist/docs/development/bring-your-own-documentation/custom-pages/_category_.json +11 -0
  99. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +34 -0
  100. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +143 -0
  101. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +68 -0
  102. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +45 -0
  103. package/dist/docs/development/bring-your-own-documentation/resource-docs/_category_.json +11 -0
  104. package/dist/docs/development/components/04-snippets.md +134 -0
  105. package/dist/docs/development/components/05-using-components.md +67 -0
  106. package/dist/docs/development/components/07-resource-references.md +136 -0
  107. package/dist/docs/development/components/_category_.json +12 -0
  108. package/dist/docs/development/components/components/01-accordian.md +41 -0
  109. package/dist/docs/development/components/components/02-accordian-group.md +57 -0
  110. package/dist/docs/development/components/components/03-admonitions.md +43 -0
  111. package/dist/docs/development/components/components/04-attachments.md +56 -0
  112. package/dist/docs/development/components/components/05-channel-information.md +29 -0
  113. package/dist/docs/development/components/components/06-design.md +66 -0
  114. package/dist/docs/development/components/components/07-entitymap.md +71 -0
  115. package/dist/docs/development/components/components/08-flow.md +46 -0
  116. package/dist/docs/development/components/components/09-link.md +32 -0
  117. package/dist/docs/development/components/components/10-mermaid-file-loader.md +63 -0
  118. package/dist/docs/development/components/components/11-message-table.md +43 -0
  119. package/dist/docs/development/components/components/12-nodegraph.md +167 -0
  120. package/dist/docs/development/components/components/13-openapi.md +55 -0
  121. package/dist/docs/development/components/components/14-prompt.md +69 -0
  122. package/dist/docs/development/components/components/15-remote-schema.md +174 -0
  123. package/dist/docs/development/components/components/16-resource-group-table.md +86 -0
  124. package/dist/docs/development/components/components/17-resource-link.md +57 -0
  125. package/dist/docs/development/components/components/18-schema.md +44 -0
  126. package/dist/docs/development/components/components/19-schema-viewer.md +69 -0
  127. package/dist/docs/development/components/components/20-steps.md +83 -0
  128. package/dist/docs/development/components/components/21-tabs.md +55 -0
  129. package/dist/docs/development/components/components/22-tiles.md +53 -0
  130. package/dist/docs/development/components/components/23-visibility.md +61 -0
  131. package/dist/docs/development/components/components/_category_.json +12 -0
  132. package/dist/docs/development/components/diagram-syntax/01-mermaid.md +218 -0
  133. package/dist/docs/development/components/diagram-syntax/02-plantuml.md +140 -0
  134. package/dist/docs/development/components/diagram-syntax/03-structurizr.md +24 -0
  135. package/dist/docs/development/components/diagram-syntax/04-icepanel.md +75 -0
  136. package/dist/docs/development/components/diagram-syntax/_category_.json +12 -0
  137. package/dist/docs/development/components/external-diagram-embeds/01-miro.md +64 -0
  138. package/dist/docs/development/components/external-diagram-embeds/02-lucid.md +47 -0
  139. package/dist/docs/development/components/external-diagram-embeds/03-drawio.md +46 -0
  140. package/dist/docs/development/components/external-diagram-embeds/04-figjam.md +44 -0
  141. package/dist/docs/development/components/external-diagram-embeds/05-icepanel.md +68 -0
  142. package/dist/docs/development/components/external-diagram-embeds/_category_.json +12 -0
  143. package/dist/docs/development/customization/01-customize-landing-page.md +155 -0
  144. package/dist/docs/development/customization/02-themes.md +429 -0
  145. package/dist/docs/development/customization/03-search.md +79 -0
  146. package/dist/docs/development/customization/06-customize-tables.md +194 -0
  147. package/dist/docs/development/customization/_category_.json +12 -0
  148. package/dist/docs/development/customization/custom-components/00-what-is-mdx.md +73 -0
  149. package/dist/docs/development/customization/custom-components/01-introduction.md +28 -0
  150. package/dist/docs/development/customization/custom-components/02-adding-components.md +145 -0
  151. package/dist/docs/development/customization/custom-components/03-component-styling.md +27 -0
  152. package/dist/docs/development/customization/custom-components/04-javascript-components.md +32 -0
  153. package/dist/docs/development/customization/custom-components/_category_.json +11 -0
  154. package/dist/docs/development/customization/customize-sidebars/00-application-sidebar.md +45 -0
  155. package/dist/docs/development/customization/customize-sidebars/01-documentation-sidebar.md +187 -0
  156. package/dist/docs/development/customization/customize-sidebars/_category_.json +11 -0
  157. package/dist/docs/development/customization/customize-visualizer/00-visualizer-nodes.md +50 -0
  158. package/dist/docs/development/customization/customize-visualizer/_category_.json +11 -0
  159. package/dist/docs/development/deployment/_category_.json +12 -0
  160. package/dist/docs/development/deployment/build-and-deploy.md +71 -0
  161. package/dist/docs/development/deployment/build-ssr-mode.md +50 -0
  162. package/dist/docs/development/deployment/deployment-workflows.md +43 -0
  163. package/dist/docs/development/deployment/hosting-options.md +112 -0
  164. package/dist/docs/development/deployment/licenses.md +50 -0
  165. package/dist/docs/development/design/_category_.json +12 -0
  166. package/dist/docs/development/design/embed-designs-into-eventcatalog.md +29 -0
  167. package/dist/docs/development/design/further-reading.md +19 -0
  168. package/dist/docs/development/design/import-resources.md +27 -0
  169. package/dist/docs/development/design/intro.md +22 -0
  170. package/dist/docs/development/developer-tools/_category_.json +12 -0
  171. package/dist/docs/development/developer-tools/eventcatalog-linter.md +597 -0
  172. package/dist/docs/development/developer-tools/github-action.md +147 -0
  173. package/dist/docs/development/developer-tools/llms.txt.md +55 -0
  174. package/dist/docs/development/developer-tools/schemas.txt.md +42 -0
  175. package/dist/docs/development/governance/_category_.json +6 -0
  176. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +62 -0
  177. package/dist/docs/development/governance/architecture-change-detection/02-configuration.md +134 -0
  178. package/dist/docs/development/governance/architecture-change-detection/03-recipes.md +309 -0
  179. package/dist/docs/development/governance/architecture-change-detection/04-webhooks.md +187 -0
  180. package/dist/docs/development/governance/architecture-change-detection/05-ci-cd.md +121 -0
  181. package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +162 -0
  182. package/dist/docs/development/governance/architecture-change-detection/_category_.json +6 -0
  183. package/dist/docs/development/guides/12-customize-your-sidebar.md +12 -0
  184. package/dist/docs/development/guides/99-adding-analytics.md +138 -0
  185. package/dist/docs/development/guides/_category_.json +11 -0
  186. package/dist/docs/development/guides/changelogs/01-introduction.md +33 -0
  187. package/dist/docs/development/guides/changelogs/02-adding-changelogs.md +94 -0
  188. package/dist/docs/development/guides/changelogs/03-automated-changelogs.md +44 -0
  189. package/dist/docs/development/guides/changelogs/_category_.json +11 -0
  190. package/dist/docs/development/guides/channels/01-introduction.md +111 -0
  191. package/dist/docs/development/guides/channels/02-adding-channels.md +198 -0
  192. package/dist/docs/development/guides/channels/04-adding-messages-to-services.md +292 -0
  193. package/dist/docs/development/guides/channels/09-configuration +39 -0
  194. package/dist/docs/development/guides/channels/_category_.json +11 -0
  195. package/dist/docs/development/guides/channels/ownership-and-components/01-owners.md +44 -0
  196. package/dist/docs/development/guides/channels/ownership-and-components/02-components.md +16 -0
  197. package/dist/docs/development/guides/channels/ownership-and-components/_category_.json +11 -0
  198. package/dist/docs/development/guides/channels/versioning-and-lifecycle/01-versioning.md +31 -0
  199. package/dist/docs/development/guides/channels/versioning-and-lifecycle/02-changelog.md +56 -0
  200. package/dist/docs/development/guides/channels/versioning-and-lifecycle/_category_.json +11 -0
  201. package/dist/docs/development/guides/data/01-introduction.md +34 -0
  202. package/dist/docs/development/guides/data/02-adding-data.md +86 -0
  203. package/dist/docs/development/guides/data/03a-adding-schemas-to-data-stores.md +73 -0
  204. package/dist/docs/development/guides/data/_category_.json +11 -0
  205. package/dist/docs/development/guides/data/ownership-and-components/01-owners.md +45 -0
  206. package/dist/docs/development/guides/data/ownership-and-components/02-components.md +17 -0
  207. package/dist/docs/development/guides/data/ownership-and-components/_category_.json +11 -0
  208. package/dist/docs/development/guides/data/versioning-and-lifecycle/01-versioning.md +32 -0
  209. package/dist/docs/development/guides/data/versioning-and-lifecycle/02-changelog.md +57 -0
  210. package/dist/docs/development/guides/data/versioning-and-lifecycle/03-deprecating.md +71 -0
  211. package/dist/docs/development/guides/data/versioning-and-lifecycle/_category_.json +11 -0
  212. package/dist/docs/development/guides/data-products/01-introduction.md +116 -0
  213. package/dist/docs/development/guides/data-products/02-adding-data-products.md +157 -0
  214. package/dist/docs/development/guides/data-products/03-inputs-and-outputs.md +128 -0
  215. package/dist/docs/development/guides/data-products/04-contracts.md +102 -0
  216. package/dist/docs/development/guides/data-products/05-versioning.md +240 -0
  217. package/dist/docs/development/guides/data-products/06-adding-to-domains.md +52 -0
  218. package/dist/docs/development/guides/data-products/_category_.json +11 -0
  219. package/dist/docs/development/guides/diagrams/01-introduction.md +78 -0
  220. package/dist/docs/development/guides/diagrams/02-creating-diagrams.md +195 -0
  221. package/dist/docs/development/guides/diagrams/03-referencing-diagrams.md +195 -0
  222. package/dist/docs/development/guides/diagrams/04-versioning-diagrams.md +204 -0
  223. package/dist/docs/development/guides/diagrams/05-comparing-diagrams.md +145 -0
  224. package/dist/docs/development/guides/diagrams/06-diagrams-with-llms.md +165 -0
  225. package/dist/docs/development/guides/diagrams/_category_.json +10 -0
  226. package/dist/docs/development/guides/domains/01-introduction.md +22 -0
  227. package/dist/docs/development/guides/domains/02-creating-domains/02-adding-domains.md +108 -0
  228. package/dist/docs/development/guides/domains/02-creating-domains/02a-subdomains.md +84 -0
  229. package/dist/docs/development/guides/domains/02-creating-domains/03-adding-services-to-domains.md +90 -0
  230. package/dist/docs/development/guides/domains/02-creating-domains/04-adding-messages-to-domains.md +107 -0
  231. package/dist/docs/development/guides/domains/02-creating-domains/05-adding-data-products-to-domains.md +105 -0
  232. package/dist/docs/development/guides/domains/02-creating-domains/_category_.json +11 -0
  233. package/dist/docs/development/guides/domains/03-ownership-and-language/01-owners.md +36 -0
  234. package/dist/docs/development/guides/domains/03-ownership-and-language/02-adding-ubiquitous-language.md +75 -0
  235. package/dist/docs/development/guides/domains/03-ownership-and-language/_category_.json +10 -0
  236. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/01-versioning.md +40 -0
  237. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/02-changelog.md +53 -0
  238. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/_category_.json +10 -0
  239. package/dist/docs/development/guides/domains/05-entities/01-introduction.md +24 -0
  240. package/dist/docs/development/guides/domains/05-entities/02-adding-entities.md +157 -0
  241. package/dist/docs/development/guides/domains/05-entities/03-adding-entities-to-domains.md +30 -0
  242. package/dist/docs/development/guides/domains/05-entities/04-domain-entity-map.md +134 -0
  243. package/dist/docs/development/guides/domains/05-entities/_category_.json +11 -0
  244. package/dist/docs/development/guides/domains/08-domain-integration-map.md +41 -0
  245. package/dist/docs/development/guides/domains/_category_.json +11 -0
  246. package/dist/docs/development/guides/flows/01-introduction.md +36 -0
  247. package/dist/docs/development/guides/flows/02-adding-flows.md +198 -0
  248. package/dist/docs/development/guides/flows/03-flow-nodes.md +273 -0
  249. package/dist/docs/development/guides/flows/04-adding-flows-to-services.md +42 -0
  250. package/dist/docs/development/guides/flows/05-adding-flows-to-domains.md +43 -0
  251. package/dist/docs/development/guides/flows/06-versioning.md +27 -0
  252. package/dist/docs/development/guides/flows/07-create-flow-with-ai.md +171 -0
  253. package/dist/docs/development/guides/flows/_category_.json +11 -0
  254. package/dist/docs/development/guides/messages/01-overview.md +57 -0
  255. package/dist/docs/development/guides/messages/_category_.json +11 -0
  256. package/dist/docs/development/guides/messages/commands/01-introduction.md +26 -0
  257. package/dist/docs/development/guides/messages/commands/02-adding-commands.md +131 -0
  258. package/dist/docs/development/guides/messages/commands/_category_.json +11 -0
  259. package/dist/docs/development/guides/messages/common/01-map-to-producers-and-consumers.md +37 -0
  260. package/dist/docs/development/guides/messages/common/02-adding-schemas.md +58 -0
  261. package/dist/docs/development/guides/messages/common/02-deprecating.md +71 -0
  262. package/dist/docs/development/guides/messages/common/02-draft-messages.md +63 -0
  263. package/dist/docs/development/guides/messages/common/02-examples.md +99 -0
  264. package/dist/docs/development/guides/messages/common/03-owners.md +40 -0
  265. package/dist/docs/development/guides/messages/common/04-versioning.md +27 -0
  266. package/dist/docs/development/guides/messages/common/05-changelog.md +73 -0
  267. package/dist/docs/development/guides/messages/common/07-components.md +12 -0
  268. package/dist/docs/development/guides/messages/common/08-shared-messages-across-boundaries.md +70 -0
  269. package/dist/docs/development/guides/messages/common/09-grouping-messages.md +98 -0
  270. package/dist/docs/development/guides/messages/common/_category_.json +11 -0
  271. package/dist/docs/development/guides/messages/events/01-introduction.md +25 -0
  272. package/dist/docs/development/guides/messages/events/02-adding-events.md +130 -0
  273. package/dist/docs/development/guides/messages/events/_category_.json +11 -0
  274. package/dist/docs/development/guides/messages/queries/01-introduction.md +25 -0
  275. package/dist/docs/development/guides/messages/queries/02-adding-queries.md +130 -0
  276. package/dist/docs/development/guides/messages/queries/_category_.json +11 -0
  277. package/dist/docs/development/guides/owners/_category_.json +11 -0
  278. package/dist/docs/development/guides/owners/teams/01-introduction.md +21 -0
  279. package/dist/docs/development/guides/owners/teams/02-adding-teams.md +73 -0
  280. package/dist/docs/development/guides/owners/teams/_category_.json +11 -0
  281. package/dist/docs/development/guides/owners/users/01-introduction.md +20 -0
  282. package/dist/docs/development/guides/owners/users/02-adding-users.md +70 -0
  283. package/dist/docs/development/guides/owners/users/_category_.json +11 -0
  284. package/dist/docs/development/guides/schemas/01-introduction.md +64 -0
  285. package/dist/docs/development/guides/schemas/02-schema-explorer.md +74 -0
  286. package/dist/docs/development/guides/schemas/03-schema-api.md +59 -0
  287. package/dist/docs/development/guides/schemas/04-schema-mcp.md +22 -0
  288. package/dist/docs/development/guides/schemas/05-field-usage.md +120 -0
  289. package/dist/docs/development/guides/schemas/06-fields-explorer.md +120 -0
  290. package/dist/docs/development/guides/schemas/_category_.json +11 -0
  291. package/dist/docs/development/guides/services/01-introduction.md +33 -0
  292. package/dist/docs/development/guides/services/02-adding-services.md +113 -0
  293. package/dist/docs/development/guides/services/03-creating-external-systems.md +71 -0
  294. package/dist/docs/development/guides/services/_category_.json +11 -0
  295. package/dist/docs/development/guides/services/adding-to-services/01-messages.md +229 -0
  296. package/dist/docs/development/guides/services/adding-to-services/02-datastores.md +77 -0
  297. package/dist/docs/development/guides/services/adding-to-services/03-entities.md +47 -0
  298. package/dist/docs/development/guides/services/adding-to-services/04-openapi.md +97 -0
  299. package/dist/docs/development/guides/services/adding-to-services/05-asyncapi.md +97 -0
  300. package/dist/docs/development/guides/services/adding-to-services/06-graphql.md +96 -0
  301. package/dist/docs/development/guides/services/adding-to-services/_category_.json +10 -0
  302. package/dist/docs/development/guides/services/ownership-and-components/01-owners.md +41 -0
  303. package/dist/docs/development/guides/services/ownership-and-components/02-components.md +13 -0
  304. package/dist/docs/development/guides/services/ownership-and-components/_category_.json +11 -0
  305. package/dist/docs/development/guides/services/versioning-and-lifecycle/01-versioning.md +27 -0
  306. package/dist/docs/development/guides/services/versioning-and-lifecycle/02-changelog.md +52 -0
  307. package/dist/docs/development/guides/services/versioning-and-lifecycle/03-deprecating.md +70 -0
  308. package/dist/docs/development/guides/services/versioning-and-lifecycle/_category_.json +11 -0
  309. package/dist/docs/development/upgrading/_category_.json +12 -0
  310. package/dist/docs/development/upgrading/upgrading.md +142 -0
  311. package/dist/docs/development/upgrading/v2.md +69 -0
  312. package/dist/docs/development/upgrading/v3.md +277 -0
  313. package/dist/docs/miro/_category_.json +12 -0
  314. package/dist/docs/miro/contributing/01-getting-involved.md +53 -0
  315. package/dist/docs/miro/contributing/_category_.json +11 -0
  316. package/dist/docs/miro/getting-started/01-overview.md +63 -0
  317. package/dist/docs/miro/getting-started/02-installation.md +37 -0
  318. package/dist/docs/miro/getting-started/03-connecting-to-eventcatalog.md +59 -0
  319. package/dist/docs/miro/getting-started/_category_.json +11 -0
  320. package/dist/docs/miro/guides/01-adding-resources-to-board.md +90 -0
  321. package/dist/docs/miro/guides/02-creating-new-resources.md +61 -0
  322. package/dist/docs/miro/guides/03-editing-resources.md +50 -0
  323. package/dist/docs/miro/guides/04-connected-resources.md +54 -0
  324. package/dist/docs/miro/guides/05-services-and-dependencies.md +54 -0
  325. package/dist/docs/miro/guides/06-navigating-the-board.md +44 -0
  326. package/dist/docs/miro/guides/07-exporting-to-eventcatalog.md +75 -0
  327. package/dist/docs/miro/guides/_category_.json +11 -0
  328. package/dist/docs/miro/specifications/01-asyncapi.md +86 -0
  329. package/dist/docs/miro/specifications/02-openapi.md +86 -0
  330. package/dist/docs/miro/specifications/03-schema-registries.md +88 -0
  331. package/dist/docs/miro/specifications/_category_.json +11 -0
  332. package/dist/docs/miro/using-ai/01-overview.md +105 -0
  333. package/dist/docs/miro/using-ai/_category_.json +11 -0
  334. package/dist/docs/plugins/01-intro.md +49 -0
  335. package/dist/docs/plugins/02-generators.md +76 -0
  336. package/dist/docs/plugins/03-all-plugins.md +26 -0
  337. package/dist/docs/plugins/_category_.json +12 -0
  338. package/dist/docs/plugins/amazon-apigateway/00-intro.md +75 -0
  339. package/dist/docs/plugins/amazon-apigateway/01-installation.md +198 -0
  340. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +136 -0
  341. package/dist/docs/plugins/amazon-apigateway/03-features.md +71 -0
  342. package/dist/docs/plugins/amazon-apigateway/04-examples.md +15 -0
  343. package/dist/docs/plugins/amazon-apigateway/_category_.json +11 -0
  344. package/dist/docs/plugins/apicurio/00-intro.md +102 -0
  345. package/dist/docs/plugins/apicurio/01-installation.md +165 -0
  346. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +682 -0
  347. package/dist/docs/plugins/apicurio/03-features.md +221 -0
  348. package/dist/docs/plugins/apicurio/04-examples.md +20 -0
  349. package/dist/docs/plugins/apicurio/_category_.json +12 -0
  350. package/dist/docs/plugins/asyncapi/00-intro.md +81 -0
  351. package/dist/docs/plugins/asyncapi/01-installation.md +155 -0
  352. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +312 -0
  353. package/dist/docs/plugins/asyncapi/03-features.md +698 -0
  354. package/dist/docs/plugins/asyncapi/03a-workflows.md +153 -0
  355. package/dist/docs/plugins/asyncapi/04-examples.md +23 -0
  356. package/dist/docs/plugins/asyncapi/04-using-reference-objects.md +45 -0
  357. package/dist/docs/plugins/asyncapi/_category_.json +12 -0
  358. package/dist/docs/plugins/aws-glue-registry/00-intro.md +104 -0
  359. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +305 -0
  360. package/dist/docs/plugins/aws-glue-registry/01-features.md +287 -0
  361. package/dist/docs/plugins/aws-glue-registry/02-examples.md +368 -0
  362. package/dist/docs/plugins/aws-glue-registry/03-api.md +282 -0
  363. package/dist/docs/plugins/aws-glue-registry/_category_.json +11 -0
  364. package/dist/docs/plugins/azure-schema-registry/00-intro.md +92 -0
  365. package/dist/docs/plugins/azure-schema-registry/01-installation.md +409 -0
  366. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +375 -0
  367. package/dist/docs/plugins/azure-schema-registry/03-features.md +347 -0
  368. package/dist/docs/plugins/azure-schema-registry/04-examples.md +378 -0
  369. package/dist/docs/plugins/azure-schema-registry/_category_.json +12 -0
  370. package/dist/docs/plugins/backstage/00-intro.md +67 -0
  371. package/dist/docs/plugins/backstage/01-installation.md +250 -0
  372. package/dist/docs/plugins/backstage/02-api.md +51 -0
  373. package/dist/docs/plugins/backstage/03-examples.md +12 -0
  374. package/dist/docs/plugins/backstage/_category_.json +11 -0
  375. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +90 -0
  376. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +223 -0
  377. package/dist/docs/plugins/confluent-schema-registry/02-plugin-configuration.md +473 -0
  378. package/dist/docs/plugins/confluent-schema-registry/03-features.md +43 -0
  379. package/dist/docs/plugins/confluent-schema-registry/04-examples.md +19 -0
  380. package/dist/docs/plugins/confluent-schema-registry/_category_.json +12 -0
  381. package/dist/docs/plugins/eventbridge/00-intro.md +55 -0
  382. package/dist/docs/plugins/eventbridge/00a-installation.md +317 -0
  383. package/dist/docs/plugins/eventbridge/01-features.md +225 -0
  384. package/dist/docs/plugins/eventbridge/02-examples.md +17 -0
  385. package/dist/docs/plugins/eventbridge/03-api.md +441 -0
  386. package/dist/docs/plugins/eventbridge/03a-workflows.md +133 -0
  387. package/dist/docs/plugins/eventbridge/_category_.json +11 -0
  388. package/dist/docs/plugins/eventcatalog-federation/00-introduction.md +69 -0
  389. package/dist/docs/plugins/eventcatalog-federation/01-installation.md +182 -0
  390. package/dist/docs/plugins/eventcatalog-federation/02-plugin-configuration.md +208 -0
  391. package/dist/docs/plugins/eventcatalog-federation/03-examples.md +15 -0
  392. package/dist/docs/plugins/eventcatalog-federation/04-configuration.md +193 -0
  393. package/dist/docs/plugins/eventcatalog-federation/05-setup-team-catalog.md +97 -0
  394. package/dist/docs/plugins/eventcatalog-federation/_category_.json +11 -0
  395. package/dist/docs/plugins/github/00-intro.md +93 -0
  396. package/dist/docs/plugins/github/01-installation.md +293 -0
  397. package/dist/docs/plugins/github/02-plugin-configuration.md +253 -0
  398. package/dist/docs/plugins/github/03-features.md +42 -0
  399. package/dist/docs/plugins/github/04-examples.md +17 -0
  400. package/dist/docs/plugins/github/_category_.json +12 -0
  401. package/dist/docs/plugins/graphql/00-intro.md +74 -0
  402. package/dist/docs/plugins/graphql/01-installation.md +144 -0
  403. package/dist/docs/plugins/graphql/02-plugin-configuration.md +127 -0
  404. package/dist/docs/plugins/graphql/03-features.md +197 -0
  405. package/dist/docs/plugins/graphql/04-examples.md +15 -0
  406. package/dist/docs/plugins/graphql/_category_.json +12 -0
  407. package/dist/docs/plugins/hookdeck/01-intro.md +152 -0
  408. package/dist/docs/plugins/hookdeck/02-api.md +133 -0
  409. package/dist/docs/plugins/hookdeck/03-cli.md +45 -0
  410. package/dist/docs/plugins/hookdeck/_category_.json +11 -0
  411. package/dist/docs/plugins/openapi/00-intro.md +78 -0
  412. package/dist/docs/plugins/openapi/01-installation.md +148 -0
  413. package/dist/docs/plugins/openapi/02-plugin-configuration.md +332 -0
  414. package/dist/docs/plugins/openapi/03-features.md +790 -0
  415. package/dist/docs/plugins/openapi/03a-workflows.md +153 -0
  416. package/dist/docs/plugins/openapi/04-examples.md +23 -0
  417. package/dist/docs/plugins/openapi/_category_.json +12 -0
  418. package/dist/eventcatalog.cjs +434 -35
  419. package/dist/eventcatalog.config.d.cts +8 -0
  420. package/dist/eventcatalog.config.d.ts +8 -0
  421. package/dist/eventcatalog.js +87 -10
  422. package/dist/features.cjs +6 -0
  423. package/dist/features.d.cts +2 -1
  424. package/dist/features.d.ts +2 -1
  425. package/dist/features.js +3 -1
  426. package/dist/generate.cjs +1 -1
  427. package/dist/generate.js +3 -3
  428. package/dist/search-indexer.cjs +356 -0
  429. package/dist/search-indexer.d.cts +30 -0
  430. package/dist/search-indexer.d.ts +30 -0
  431. package/dist/search-indexer.js +10 -0
  432. package/dist/utils/cli-logger.cjs +1 -1
  433. package/dist/utils/cli-logger.js +2 -2
  434. package/eventcatalog/astro.config.mjs +28 -32
  435. package/eventcatalog/src/components/Search/SearchModal.tsx +248 -148
  436. package/eventcatalog/src/components/Search/search-utils.spec.ts +138 -1
  437. package/eventcatalog/src/components/Search/search-utils.ts +271 -0
  438. package/eventcatalog/src/env.d.ts +1 -0
  439. package/package.json +4 -3
@@ -0,0 +1,253 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog GitHub plugin
5
+ sidebar_label: Plugin Configuration
6
+ title: Plugin Configuration
7
+ description: Configuration of the EventCatalog GitHub plugin
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+
12
+ # Plugin Configuration
13
+
14
+ ## Overview
15
+
16
+ The EventCatalog GitHub plugin is configured in the `eventcatalog.config.js` file inside the `generators` array.
17
+
18
+
19
+ ## Required Configuration Options
20
+
21
+ | Option | Type | Required | Example | Description |
22
+ |--------|------|----------|---------|-------------|
23
+ | `source` | `string` | Yes | `https://github.com/event-catalog/eventcatalog.git` | The HTTP or SSH URL of the GitHub repository. |
24
+ | `path` | `string` | Yes | `examples/default` | The path to the directory in the repository that contains the schemas. |
25
+
26
+
27
+ ## Optional Configuration Options
28
+
29
+ <AddedIn version="1.0.0" pkg="@eventcatalog/generator-github" url="https://github.com/event-catalog/generators/releases/tag/v"/>
30
+
31
+ ### Authentication
32
+
33
+ | Option | Type | Required | Example | Description |
34
+ |--------|------|----------|---------|-------------|
35
+ | `token` | `string` | No | `process.env.MY_GITHUB_TOKEN` | GitHub personal access token or GitHub App installation token for private repository access. Can also be set via `EVENTCATALOG_GITHUB_TOKEN` environment variable. |
36
+
37
+ <details>
38
+ <summary>See an example configuration - Private repository authentication</summary>
39
+
40
+ Access private repositories by providing a GitHub token.
41
+
42
+ ```js
43
+ // ...rest of eventcatalog.config.js file
44
+ generators: [
45
+ [
46
+ '@eventcatalog/generator-github',
47
+ {
48
+ source: 'https://github.com/your-org/private-repo',
49
+ path: 'schemas',
50
+ token: process.env.GITHUB_TOKEN,
51
+ messages: [
52
+ {
53
+ id: 'order-placed',
54
+ schemaPath: 'order-placed.avro',
55
+ type: 'event',
56
+ },
57
+ ]
58
+ }
59
+ ]
60
+ ]
61
+ ```
62
+ </details>
63
+
64
+ ### Messages
65
+
66
+ You can assign schemas to messages (events, commands, or commands) in EventCatalog.
67
+
68
+ :::tip Documentation
69
+ Remember the GitHub plugin will keep your schemas in sync with your messages. Any documentation (markdown) added to your messages will be persisted between imports and versions.
70
+ :::
71
+
72
+ | Option | Type | Required | Default | Description |
73
+ |--------|------|----------|---------|-------------|
74
+ | `messages` | object | - | - | List of messages to assign the schemas to. |
75
+ | `messages.id` | string | Yes | - | EventCatalog ID for the message. |
76
+ | `messages.name` | string | No | - | Friendly name of the message, if not provided the message id will be used. |
77
+ | `messages.version` | string | No | - | Version of the message, recommended you set this to the version of the message in the repository, Defaults to `1`. |
78
+ | `messages.schemaPath` | string | Yes | - | The path to your schema file in the repository, relative to the path configured in the `path` option. For example if `path` is `examples/default` and your `schemaPath` is `/schemas/order-placed.avro`, the path used will be `examples/default/schemas/order-placed.avro`. |
79
+ | `messages.type` | string | Yes | - | Type of the message (`event`, `command`, or `query`). |
80
+
81
+ <details>
82
+ <summary>See an example configuration - Assign schemas to messages</summary>
83
+
84
+ In this example we assign schemas to messages.
85
+
86
+ ```js
87
+ // ...rest of eventcatalog.config.js file
88
+ generators: [
89
+ [
90
+ '@eventcatalog/generator-github',
91
+ {
92
+ source: 'https://github.com/event-catalog/eventcatalog.git',
93
+ path: 'examples/default',
94
+ messages: [
95
+ {
96
+ id: 'order-placed',
97
+ name: 'Order Placed',
98
+ version: '1',
99
+ schemaPath: 'domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.avro',
100
+ type: 'event',
101
+ },
102
+ {
103
+ id: 'update-order',
104
+ name: 'Update Order',
105
+ version: '1',
106
+ schemaPath: 'domains/Orders/services/InventoryService/commands/UpdateOrder/schema.avro',
107
+ type: 'command',
108
+ },
109
+ ]
110
+ }
111
+ ]
112
+ ]
113
+ ```
114
+ </details>
115
+
116
+ ### Services
117
+
118
+ You can assign your schemas to your producers and consumers (services).
119
+
120
+ :::tip Documentation
121
+ Remember the GitHub plugin will keep your schemas in sync with your services. Any documentation (markdown) added to your services will be persisted between imports and versions.
122
+ :::
123
+
124
+
125
+ | Option | Type | Default | Required | Description |
126
+ |--------|------|---------|----------|-------------|
127
+ | `services` | object | - | Yes | List of producers/consumers (services) to assign the schemas to. |
128
+ | `services.id` | string | - | Yes | EventCatalog ID for the service. |
129
+ | `services.sends` | Message[] | - | No | Configuration to assign schemas to a producer. The schemas and topic defined here will be assigned to the producer. |
130
+ | `services.receives` | Message[] | - | No | Configuration to assign schemas to a consumer. The schemas and topic defined here will be assigned to the consumer. |
131
+
132
+ <details>
133
+ <summary>See an example configuration - Assign schemas to producers and consumers</summary>
134
+
135
+ In this example we assign schemas to producers and consumers (services).
136
+
137
+ ```js
138
+ // ...rest of eventcatalog.config.js file
139
+ generators: [
140
+ [
141
+ '@eventcatalog/generator-github',
142
+ {
143
+ source: 'https://github.com/event-catalog/eventcatalog.git',
144
+ path: 'examples/default',
145
+ services: [
146
+ {
147
+ id: 'Orders Service',
148
+ // The order service sends these messages...
149
+ sends: [
150
+ {
151
+ id: 'order-placed',
152
+ name: 'Order Placed',
153
+ version: '1',
154
+ schemaPath: 'domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.avro',
155
+ type: 'event',
156
+ }
157
+ ],
158
+ // The order service receives these messages...
159
+ receives: [{
160
+ {
161
+ id: 'place-order',
162
+ version: '1',
163
+ schemaPath: 'domains/Orders/services/InventoryService/commands/UpdateOrder/schema.avro',
164
+ type: 'command',
165
+ }
166
+ }]
167
+ }
168
+ ]
169
+ }
170
+ ]
171
+ ]
172
+ ```
173
+
174
+ </details>
175
+
176
+ ### Domains
177
+
178
+ You can define and assign domains to your services.
179
+
180
+ | Option | Type | Default | Description |
181
+ |--------|------|---------|-------------|
182
+ | `domain.id` | string | - | EventCatalog ID for the domain (e.g `orders-domain`). |
183
+ | `domain.name` | string | - | Name of the domain (e.g `Orders Domain`). |
184
+ | `domain.version` | string | - | Version of the domain (e.g `1.0.0`). |
185
+
186
+ <details>
187
+ <summary>See an example configuration - Assign a domain to a service</summary>
188
+
189
+ In this example we assign a domain to a service.
190
+
191
+ ```js
192
+ // ...rest of eventcatalog.config.js file
193
+ generators: [
194
+ [
195
+ '@eventcatalog/generator-github',
196
+ {
197
+ source: 'https://github.com/event-catalog/eventcatalog.git',
198
+ path: 'examples/default',
199
+ services: [
200
+ {
201
+ id: 'Orders Service',
202
+ version: '1.0.0',
203
+ sends: [
204
+ {
205
+ id: 'order-placed',
206
+ name: 'Order Placed',
207
+ version: '1',
208
+ schemaPath: 'domains/Orders/services/InventoryService/events/InventoryAdjusted/schema.avro',
209
+ type: 'event',
210
+ }
211
+ ],
212
+ receives: [
213
+ {
214
+ id: 'place-order',
215
+ version: '1',
216
+ schemaPath: 'domains/Orders/services/InventoryService/commands/UpdateOrder/schema.avro',
217
+ type: 'command',
218
+ }
219
+ ]
220
+ }
221
+ ],
222
+ // The list of services are assigned to this domain
223
+ domain: {
224
+ id: 'orders-domain',
225
+ name: 'Orders Domain',
226
+ version: '1.0.0',
227
+ }
228
+ }
229
+ ]
230
+ ]
231
+ ```
232
+
233
+ </details>
234
+
235
+
236
+ ## Need help?
237
+
238
+ If you have questions or need help, you can join our [Discord community](https://eventcatalog.dev/discord)
239
+ or refer to the [Github Plugin examples on GitHub](https://github.com/event-catalog/generators/tree/main/examples/generator-github).
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+
@@ -0,0 +1,42 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - components
5
+ sidebar_label: Features
6
+ title: Features
7
+ description: Features of the Github Plugin with EventCatalog
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+
12
+ ### Adding semantic meaning to schemas
13
+
14
+ Using the Github plugin with EventCatalog, you can import and keep your schemas in Sync with your documentation.
15
+
16
+ When you import a schema into EventCatalog the schema will be mapped to your event, query or command. The schema (any format, e.g JSON, Avro, Protobuf) will be stored against the message in EventCatalog.
17
+
18
+ Each message (command, event, query) has their own `index.mdx` file. This is the place you can write your documentation for the message. Everytime you reimport your schemas, your documentation will be preserved.
19
+
20
+ This pattern gives you the flexibility to add business meaning to your messages and make them easier to understand for teams whilst keeping your schemas up to date and in sync with the real world.
21
+
22
+ ### Visualize producers, consumers and your schemas.
23
+
24
+ When you import your schemas into EventCatalog you can assign them to producers and consumers.
25
+
26
+ After the import process, you can use the EventCatalog Visualizer ([see demo](https://demo.eventcatalog.dev/visualiser/domains/E-Commerce/1.0.0)) to see exactly how your messages, producers and consumers are mapped.
27
+
28
+ ![Example Image](./images/visualizer.png)
29
+
30
+ ### Downloading schemas
31
+
32
+ EventCatalog supports any schema format (e.g avro, json, protobuf, etc). When you import your schemas into EventCatalog users can view and download the schema directly from EventCatalog.
33
+
34
+ You can use the [Schema](/docs/development/components/components/schema) or [SchemaViewer](/docs/development/components/components/schema-viewer) components in your markdown to display them in your documentation.
35
+
36
+ ### Missing a feature?
37
+
38
+ If you are missing a feature, please let us know by opening an issue on [GitHub](https://github.com/event-catalog/eventcatalog/issues).
39
+
40
+ ### Example
41
+
42
+ See the [eventcatalog-github-example](https://github.com/event-catalog/generators/tree/main/examples/generator-github) for a working example.
@@ -0,0 +1,17 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - components
5
+ sidebar_label: Examples
6
+ title: Examples
7
+ description: Examples of using the Github plugin
8
+ ---
9
+
10
+ You can find many examples of using the Github plugin in the [EventCatalog GitHub repository](https://github.com/event-catalog/generators).
11
+
12
+ ## Examples
13
+
14
+ - [Basic example](https://github.com/event-catalog/generators/tree/main/examples/generator-github/basic)
15
+ - An example of using the Github plugin to pull schemas from GitHub and assign them to events, queries and commands.
16
+ - [Import all schemas and assign them to producers and consumers](https://github.com/event-catalog/generators/tree/main/examples/generator-github/assign-schemas-to-producers-and-consumers)
17
+ - An example of using the Github plugin to pull schemas from GitHub and assign them to producers and consumers (Services).
@@ -0,0 +1,12 @@
1
+ {
2
+ "label": "GitHub Plugin",
3
+ "position": 6,
4
+ "collapsible": true,
5
+ "collapsed": true,
6
+ "link": {
7
+ "type": "generated-index",
8
+ "slug": "github",
9
+ "title": "GitHub",
10
+ "description": "GitHub integration for EventCatalog"
11
+ }
12
+ }
@@ -0,0 +1,74 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - components
5
+ sidebar_label: Introduction
6
+ title: Introduction
7
+ description: Getting started with GraphQL plugin
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+
12
+ import PluginLicense from '@site/src/components/MDX/PluginLicense';
13
+
14
+ <PluginLicense url="#commercial-use" />
15
+
16
+ <iframe width="100%" height="415" src="https://www.youtube.com/embed/J352QYLWQkw?si=hwwKr-k2IENfICmR" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
17
+
18
+ ---
19
+
20
+ [GraphQL](https://graphql.org/) is a query language and runtime for APIs that provides a complete and understandable description of the data in your API. It gives clients the power to ask for exactly what they need and nothing more, makes it easier to evolve APIs over time, and enables powerful developer tools.
21
+
22
+ Using the EventCatalog GraphQL generator you can generate and maintain your EventCatalog from your GraphQL schema files.
23
+
24
+ ### Core Features
25
+
26
+ The EventCatalog GraphQL plugin can provide you with many features:
27
+
28
+ - ⭐️ Generate domains, services and messages into your catalog from your GraphQL schema files
29
+ - ⭐️ [Map queries, mutations and subscriptions from your GraphQL schema](/docs/plugins/graphql/features#mapping-operations-as-queries-mutations-or-subscriptions)
30
+ - ⭐️ [Assign owners (your teams) to your services and messages all generated by your GraphQL schemas](/docs/plugins/graphql/features#assign-owners-to-your-domains-services-and-messages)
31
+ - ⭐️ [Add semantic meaning to your GraphQL schemas, persist this meaning between versions](/docs/plugins/graphql/features#persist-markdown)
32
+ - ⭐️ [Automatically version your changes in EventCatalog in sync with your GraphQL schema versions](#automatic-versioning)
33
+ - ⭐️ [Display your GraphQL schemas and operations in the catalog](#displaying-schemas)
34
+ - ⭐️ Ability to download your schemas and GraphQL files (also versioned)
35
+ - ⭐️ Ability to draft services and operations in EventCatalog from your GraphQL schemas
36
+ - ⭐️ and more....
37
+
38
+ ### How it works
39
+
40
+ ![Example](/img/integrations/graphql/graphql.png)
41
+
42
+ EventCatalog supports [generators](/docs/plugins/generators). These are scripts or plugins that can be run to integrate with any external API, system or specification files. EventCatalog also provides an [SDK](/docs/sdk) to give developers easier access to their catalogs through custom scripts or generators.
43
+
44
+ The EventCatalog GraphQL plugin let's you generate your catalog from one or more GraphQL schema files.
45
+
46
+ Your GraphQL schemas are parsed and transformed into services, domains and messages in your catalog.
47
+
48
+ This let's you visualize your architecture, assign owners to your services and much more.
49
+
50
+ ## Commercial and License
51
+
52
+ This plugin requires a license key to be used.
53
+
54
+ You can get a 14 day trial license key to try the plugin out by going to [EventCatalog Cloud](https://eventcatalog.cloud).
55
+
56
+ After the trial you can purchase a license to continue using this plugin, we have different plans to suit your organization.
57
+
58
+ See [pricing](/pricing) for more information.
59
+
60
+ _Have any questions? You can email us at `hello@eventcatalog.dev`._
61
+
62
+ ## License FAQ
63
+
64
+ ### What is the license key for?
65
+ The license key is required to use the GraphQL plugin with EventCatalog. It helps support ongoing development and maintenance of the plugin and project.
66
+
67
+ ### How do I get a license key?
68
+ You can obtain a license key by visiting [EventCatalog Cloud](https://eventcatalog.cloud). New users can start with a 14-day free trial.
69
+
70
+ ### Terms
71
+ - **Trial Period**: 14 days free trial no credit card required
72
+ - **Support**: Discord community support (extra for priority support)
73
+
74
+ After your trial period ends, you can purchase a full license through [EventCatalog Cloud](https://eventcatalog.cloud) to continue using the plugin.
@@ -0,0 +1,144 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog GraphQL
5
+ sidebar_label: Installation
6
+ title: Installation
7
+ description: Installation of the EventCatalog GraphQL plugin
8
+ ---
9
+
10
+ import PluginLicense from '@site/src/components/MDX/PluginLicense';
11
+ import Beta from '@site/src/components/MDX/Beta';
12
+ import Tabs from '@theme/Tabs';
13
+ import TabItem from '@theme/TabItem';
14
+
15
+ <PluginLicense url="#commercial-use" />
16
+
17
+ The GraphQL plugin is used to generate EventCatalog resources (e.g domains, services and messages) from your GraphQL schema files.
18
+
19
+ ## Installation
20
+
21
+ Run the command below to install the EventCatalog GraphQL plugin.
22
+
23
+ <Tabs>
24
+ <TabItem value="apple" label="Install on existing catalog" default>
25
+ ```bash
26
+ npm i @eventcatalog/generator-graphql
27
+ ```
28
+ </TabItem>
29
+ </Tabs>
30
+
31
+ :::tip "Don't have an EventCatalog project yet?"
32
+ If you don't have an EventCatalog project yet, you can follow the instructions in the [Getting Started](/docs/development/getting-started/installation) guide.
33
+ :::
34
+
35
+ #### Configuration
36
+
37
+ Configure the plugin in your `eventcatalog.config.js` file.
38
+
39
+ Add the plugin to the `generators` array.
40
+
41
+ ```js title="eventcatalog.config.js"
42
+ // ...
43
+ generators: [
44
+ // Add single GraphQL schema to a domain
45
+ [
46
+ '@eventcatalog/generator-graphql',
47
+ {
48
+ services: [
49
+ // Point to a local GraphQL schema file, we assign it to the service "User Service", the service has a version of 1.0.0
50
+ { path: path.join(__dirname, 'graphql-schemas', 'user-service.graphql'), id: "User Service", version: "1.0.0"}
51
+ ],
52
+ // The services are assigned to the domain "Users"
53
+ domain: { id: 'users', name: 'Users', version: '0.0.1' },
54
+ },
55
+ ],
56
+ // Add many GraphQL schemas to a domain
57
+ [
58
+ '@eventcatalog/generator-graphql',
59
+ {
60
+ services: [
61
+ // Orders service
62
+ { path: path.join(__dirname, 'graphql-schemas', 'order-service.graphql'), id: "Order Service", version: "1.0.0"}
63
+ // Payment service
64
+ { path: path.join(__dirname, 'graphql-schemas', 'payment-service.graphql'), id: "Payment Service", version: "1.0.0"}
65
+ ],
66
+ // We add the orders and payment services to the domain "Shopping"
67
+ domain: { id: 'shopping', name: 'Shopping', version: '0.0.1' },
68
+ },
69
+ ],
70
+ ],
71
+ };
72
+
73
+ ```
74
+
75
+ ### Configure license key
76
+
77
+ The EventCatalog GraphQL plugin requires a license key to work with EventCatalog.
78
+
79
+ You can get a trial license key from [EventCatalog Cloud](https://eventcatalog.cloud).
80
+
81
+ You have a few options for setting the license key:
82
+
83
+ 1. [Setting license key in `.env` file (recommended)](#setting-license-key-in-env-file-recommended)
84
+ 2. [Setting license key in eventcatalog.config.js](#setting-license-key-in-eventcatalogconfigjs)
85
+
86
+ #### 1. Setting license key in `.env` file (recommended)
87
+
88
+ Create a `.env` file in the root of your project and add the following:
89
+
90
+ ```bash title=".env"
91
+ EVENTCATALOG_LICENSE_KEY_GRAPHQL=your-license-key
92
+ ```
93
+
94
+ :::tip Using an older version of EventCatalog?
95
+
96
+ 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.
97
+
98
+ ```bash title="Setting license key in environment variables"
99
+ export EVENTCATALOG_LICENSE_KEY_GRAPHQL=your-license-key
100
+ ```
101
+
102
+ :::
103
+
104
+ #### 2. Setting license key in eventcatalog.config.js
105
+
106
+ If you prefer, you can set the license key in the `eventcatalog.config.js` file
107
+ using the `licenseKey` property in the EventCatalog GraphQL plugin.
108
+
109
+ ```js title="eventcatalog.config.js"
110
+ export default {
111
+ generators: [
112
+ [
113
+ '@eventcatalog/generator-graphql',
114
+ {
115
+ licenseKey: '[INSERT_YOUR_LICENSE_KEY]', // or process.env.EVENTCATALOG_LICENSE_KEY_GRAPHQL
116
+ },
117
+ ],
118
+ ],
119
+ };
120
+ ```
121
+
122
+ #### White listing EventCatalog domains
123
+
124
+ 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.
125
+
126
+ #### Run the plugin
127
+
128
+ _This command will run the generators in your eventcatalog.config.js file._
129
+
130
+ ```
131
+ npm run generate
132
+ ```
133
+
134
+ #### View your catalog
135
+
136
+ Run your catalog locally to see the changes
137
+
138
+ ```
139
+ npm run dev
140
+ ```
141
+
142
+ ## Any questions or need help?
143
+
144
+ 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).
@@ -0,0 +1,127 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog GraphQL plugin
5
+ sidebar_label: Plugin Configuration
6
+ title: Plugin Configuration
7
+ description: Configuration of the EventCatalog GraphQL plugin
8
+ ---
9
+
10
+ import Tabs from '@theme/Tabs';
11
+ import TabItem from '@theme/TabItem';
12
+
13
+ # Plugin Configuration
14
+
15
+ ## Overview
16
+
17
+ The EventCatalog GraphQL plugin is configured in the `eventcatalog.config.js` file inside the `generators` array.
18
+
19
+ ## Required Configuration Options
20
+
21
+ | Option | Type | Required | Description |
22
+ |--------|------|----------|-------------|
23
+ | `services` | `Service[]` | Yes | List of GraphQL schema files to add to your catalog, and the service name and version |
24
+ | `licenseKey` | string | Yes* | License key for the plugin. Get a 14-day trial at [EventCatalog Cloud](https://eventcatalog.cloud). Can also be set via `EVENTCATALOG_LICENSE_KEY_GRAPHQL` environment variable. |
25
+
26
+ ### Service Configuration
27
+
28
+ Each service in the `services` array requires the following properties:
29
+
30
+ | Property | Type | Required | Description |
31
+ |----------|------|----------|-------------|
32
+ | `id` | string | Yes | EventCatalog ID for the service. This is required and must be unique. |
33
+ | `path` | string | Yes | Path to your GraphQL schema file |
34
+ | `version` | string | Yes | Version of the service. _EventCatalog resources are versioned, you must specify a version for the service._|
35
+ | `owners` | string[] | No | Owners of the service. You can assign EventCatalog users or teams to services. Setting owners on the service will also set the owners of the messages in the GraphQL schema. If owners are already set on any resource, those owners are persisted. |
36
+ | `name` | string | No | Display name for the service. If not provided, the `id` will be used. |
37
+ | `summary` | string | No | Short summary of the service. |
38
+ | `generateMarkdown` | function | - | Function to override the default markdown generation for the service. See [Markdown templates](#markdown-templates) for more information. |
39
+ | `writesTo` | array[\{id: string, version?: string\}] | No | Array of [data stores](/docs/development/guides/data/introduction) id and version (optional) that the service writes to. (Added in v0.4.4) |
40
+ | `readsFrom` | array[\{id: string, version?: string\}] | No | Array of [data stores](/docs/development/guides/data/introduction) id and version (optional) that the service reads from. (Added in v0.4.0) |
41
+
42
+ ## Optional Configuration Options
43
+
44
+ | Option | Type | Default | Description |
45
+ |--------|------|---------|-------------|
46
+ | `domain` | object | - | Domain to associate all configured services with |
47
+ | `domain.id` | string | - | Domain identifier |
48
+ | `domain.name` | string | - | Domain display name |
49
+ | `domain.version` | string | - | Domain version |
50
+ | `domain.owners` | string[] | - | Owners of the domain. If owners are already set on the domain, those owners are persisted. |
51
+ | `domain.markdown` | string | - | Custom markdown content for the domain. |
52
+ | `messages.generateMarkdown` | function | - | Function to override the default markdown generation for the message. See [Markdown templates](#markdown-templates) for more information. |
53
+ | `writeFilesToRoot` | boolean | `false` | Write GraphQL messages to root instead of service folder. By default all domains, services and messages will be grouped in the folder directory structure. |
54
+
55
+ ## Example Configuration
56
+
57
+ ```js title="eventcatalog.config.js"
58
+ import path from "path";
59
+ import url from "url";
60
+
61
+ const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
62
+
63
+ /** @type {import('@eventcatalog/core/bin/eventcatalog.config').Config} */
64
+ export default {
65
+ cId: "10b46030-5736-4600-8254-421c3ed56e47",
66
+ title: "GraphQL API Catalog",
67
+ tagline: "Your GraphQL API Documentation",
68
+ organizationName: "Your Organization",
69
+ homepageLink: "https://eventcatalog.dev/",
70
+ editUrl: "https://github.com/your-org/your-catalog/edit/master",
71
+ trailingSlash: false,
72
+ base: "/",
73
+ logo: {
74
+ alt: "EventCatalog Logo",
75
+ src: "/logo.png",
76
+ text: "Your Organization",
77
+ },
78
+ docs: {
79
+ sidebar: {
80
+ showPageHeadings: true,
81
+ },
82
+ },
83
+ generators: [
84
+ [
85
+ '@eventcatalog/generator-graphql',
86
+ {
87
+ services: [
88
+ {
89
+ id: 'User Service',
90
+ version: '1.0.0',
91
+ name: 'User Service',
92
+ path: path.join(__dirname, 'graphql-schemas', 'user-service.graphql'),
93
+ owners: ['team-users']
94
+ },
95
+ {
96
+ id: 'Order Service',
97
+ version: '1.2.0',
98
+ name: 'Order Service',
99
+ path: path.join(__dirname, 'graphql-schemas', 'order-service.graphql'),
100
+ owners: ['team-orders']
101
+ },
102
+ ],
103
+ domain: { id: 'ecommerce', name: 'E-commerce', version: '0.0.1' },
104
+ },
105
+ ],
106
+ [
107
+ '@eventcatalog/generator-graphql',
108
+ {
109
+ services: [
110
+ {
111
+ id: 'Analytics Service',
112
+ version: '3.0.0',
113
+ name: 'Analytics Service',
114
+ path: path.join(__dirname, 'graphql-schemas', 'analytics-service.graphql'),
115
+ draft: true
116
+ },
117
+ ],
118
+ domain: { id: 'analytics', name: 'Analytics', version: '0.0.1' },
119
+ debug: true
120
+ },
121
+ ],
122
+ ],
123
+ };
124
+ ```
125
+
126
+ You can view an example configuration in the [EventCatalog GraphQL plugin GitHub repository](https://github.com/event-catalog/generators/blob/main/examples/generator-graphql/basic/eventcatalog.config.js).
127
+