@eventcatalog/core 4.1.3 → 4.1.5

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 (450) 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-DDGOJV25.js → chunk-DIUAURE2.js} +1 -1
  6. package/dist/{chunk-WEDJTUSQ.js → chunk-E6IUV4GX.js} +1 -1
  7. package/dist/{chunk-TUKKXNQR.js → chunk-G74MXXTG.js} +1 -1
  8. package/dist/{chunk-PDQER3NQ.js → chunk-GIU3S4CI.js} +1 -1
  9. package/dist/{chunk-G3D7IZ67.js → chunk-X77TET65.js} +1 -1
  10. package/dist/constants.cjs +1 -1
  11. package/dist/constants.js +1 -1
  12. package/dist/docs/api/02-config.md +166 -14
  13. package/dist/docs/api/08-code-blocks.md +1 -1
  14. package/dist/docs/development/00-why-eventcatalog.md +29 -40
  15. package/dist/docs/development/01-fundamentals.md +58 -7
  16. package/dist/docs/development/01-getting-started/configuration-overview.md +1 -93
  17. package/dist/docs/development/01-getting-started/develop-and-build.md +4 -3
  18. package/dist/docs/development/01-getting-started/installation.md +3 -3
  19. package/dist/docs/development/01-getting-started/project-structure.md +74 -141
  20. package/dist/docs/development/ask-your-architecture/01-intro.md +8 -76
  21. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +4 -3
  22. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +2 -1
  23. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +1 -3
  24. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +2 -2
  25. package/dist/docs/development/{developer-tools/llms.txt.md → ask-your-architecture/02-llms.txt.md} +1 -2
  26. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +2 -2
  27. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +2 -2
  28. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +2 -25
  29. package/dist/docs/development/{developer-tools/schemas.txt.md → ask-your-architecture/03-schemas.txt.md} +1 -2
  30. package/dist/docs/development/ask-your-architecture/04-agents/01-overview.md +27 -0
  31. package/dist/docs/development/ask-your-architecture/04-agents/02-code-to-docs.md +124 -0
  32. package/dist/docs/development/ask-your-architecture/04-agents/03-breaking-changes.md +170 -0
  33. package/dist/docs/development/ask-your-architecture/04-agents/_category_.json +12 -0
  34. package/dist/docs/development/ask-your-architecture/{04-skills → 05-skills}/_category_.json +2 -2
  35. package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/03-installation.md +1 -1
  36. package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/_category_.json +2 -1
  37. package/dist/docs/development/ask-your-architecture/_category_.json +2 -2
  38. package/dist/docs/development/authentication/01-introduction.md +3 -3
  39. package/dist/docs/development/authentication/02-enabling-authentication.md +2 -2
  40. package/dist/docs/development/authentication/providers/03-setting-up-github.md +25 -1
  41. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +0 -1
  42. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +29 -25
  43. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +9 -8
  44. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +70 -32
  45. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +4 -1
  46. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +2 -1
  47. package/dist/docs/development/bring-your-own-documentation/custom-pages/_category_.json +1 -1
  48. package/dist/docs/development/bring-your-own-documentation/diagrams/01-introduction.md +56 -0
  49. package/dist/docs/development/bring-your-own-documentation/diagrams/02-creating-diagrams.md +262 -0
  50. package/dist/docs/development/{guides → bring-your-own-documentation}/diagrams/03-referencing-diagrams.md +3 -87
  51. package/dist/docs/development/bring-your-own-documentation/diagrams/05-comparing-diagrams.md +25 -0
  52. package/dist/docs/development/bring-your-own-documentation/diagrams/07-reference.md +144 -0
  53. package/dist/docs/development/{guides → bring-your-own-documentation}/diagrams/_category_.json +2 -1
  54. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +2 -4
  55. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +138 -43
  56. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +38 -9
  57. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +62 -13
  58. package/dist/docs/development/components/04-snippets.md +0 -2
  59. package/dist/docs/development/components/05-using-components.md +4 -16
  60. package/dist/docs/development/components/07-resource-references.md +1 -1
  61. package/dist/docs/development/components/_category_.json +3 -3
  62. package/dist/docs/development/components/components/01-accordian.md +1 -1
  63. package/dist/docs/development/components/components/03-admonitions.md +1 -1
  64. package/dist/docs/development/components/components/04-agent-tools.md +2 -2
  65. package/dist/docs/development/components/components/05-attachments.md +1 -1
  66. package/dist/docs/development/components/components/07-design.md +1 -2
  67. package/dist/docs/development/components/components/08-entitymap.md +2 -2
  68. package/dist/docs/development/components/components/09-flow.md +1 -1
  69. package/dist/docs/development/components/components/10-link.md +1 -1
  70. package/dist/docs/development/components/components/11-mermaid-file-loader.md +1 -1
  71. package/dist/docs/development/components/components/12-message-table.md +1 -1
  72. package/dist/docs/development/components/components/13-nodegraph.md +1 -1
  73. package/dist/docs/development/components/components/14-openapi.md +3 -3
  74. package/dist/docs/development/components/components/15-prompt.md +2 -6
  75. package/dist/docs/development/components/components/16-remote-schema.md +5 -3
  76. package/dist/docs/development/components/components/17-resource-group-table.md +1 -1
  77. package/dist/docs/development/components/components/18-resource-link.md +1 -1
  78. package/dist/docs/development/components/components/19-schema.md +1 -1
  79. package/dist/docs/development/components/components/20-schema-viewer.md +1 -1
  80. package/dist/docs/development/components/components/21-steps.md +1 -1
  81. package/dist/docs/development/components/components/22-tabs.md +1 -1
  82. package/dist/docs/development/components/components/23-tiles.md +1 -1
  83. package/dist/docs/development/components/components/24-visibility.md +1 -1
  84. package/dist/docs/development/components/components/_category_.json +1 -1
  85. package/dist/docs/development/components/custom-components/01-introduction.md +74 -0
  86. package/dist/docs/development/components/custom-components/02-create-your-first-component.md +71 -0
  87. package/dist/docs/development/components/custom-components/03-pass-data-into-components.md +86 -0
  88. package/dist/docs/development/components/custom-components/04-fetch-data-in-components.md +191 -0
  89. package/dist/docs/development/components/custom-components/05-style-components.md +60 -0
  90. package/dist/docs/development/components/custom-components/06-add-client-side-scripts.md +67 -0
  91. package/dist/docs/development/components/custom-components/07-reference.md +115 -0
  92. package/dist/docs/development/components/custom-components/_category_.json +11 -0
  93. package/dist/docs/development/components/{external-diagram-embeds/03-drawio.md → diagram-syntax/01-drawio.md} +2 -3
  94. package/dist/docs/development/components/{external-diagram-embeds/04-figjam.md → diagram-syntax/02-figjam.md} +1 -2
  95. package/dist/docs/development/components/diagram-syntax/{04-icepanel.md → 03-icepanel.md} +1 -2
  96. package/dist/docs/development/components/diagram-syntax/04-likec4.md +136 -0
  97. package/dist/docs/development/components/{external-diagram-embeds/02-lucid.md → diagram-syntax/05-lucid.md} +2 -3
  98. package/dist/docs/development/components/diagram-syntax/{01-mermaid.md → 06-mermaid.md} +1 -1
  99. package/dist/docs/development/components/{external-diagram-embeds/01-miro.md → diagram-syntax/07-miro.md} +2 -3
  100. package/dist/docs/development/components/diagram-syntax/{02-plantuml.md → 08-plantuml.md} +3 -3
  101. package/dist/docs/development/components/diagram-syntax/{03-structurizr.md → 09-structurizr.md} +1 -1
  102. package/dist/docs/development/components/diagram-syntax/_category_.json +3 -3
  103. package/dist/docs/development/customization/01-customize-landing-page.md +7 -15
  104. package/dist/docs/development/customization/02-themes.md +1 -0
  105. package/dist/docs/development/customization/03-application-sidebar.md +246 -0
  106. package/dist/docs/development/customization/03-search.md +2 -2
  107. package/dist/docs/development/customization/{customize-sidebars/01-documentation-sidebar.md → 04-documentation-sidebar.md} +4 -4
  108. package/dist/docs/development/customization/05-custom-pages-and-api-routes/01-introduction.md +94 -0
  109. package/dist/docs/development/customization/05-custom-pages-and-api-routes/02-create-a-custom-page.md +177 -0
  110. package/dist/docs/development/customization/05-custom-pages-and-api-routes/03-create-an-api-route.md +128 -0
  111. package/dist/docs/development/customization/05-custom-pages-and-api-routes/04-reference.md +138 -0
  112. package/dist/docs/development/customization/05-custom-pages-and-api-routes/_category_.json +12 -0
  113. package/dist/docs/development/customization/06-customize-tables.md +3 -3
  114. package/dist/docs/development/customization/07-resource-icons.md +190 -0
  115. package/dist/docs/development/customization/_category_.json +1 -1
  116. package/dist/docs/development/customization/customize-visualizer/_category_.json +2 -2
  117. package/dist/docs/development/deployment/hosting-options.md +1 -2
  118. package/dist/docs/development/developer-tools/api-catalog.md +1 -1
  119. package/dist/docs/development/developer-tools/eventcatalog-linter.md +137 -2
  120. package/dist/docs/development/governance/_category_.json +1 -0
  121. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +2 -2
  122. package/dist/docs/development/guides/98-versioning-resources.md +192 -0
  123. package/dist/docs/development/guides/99-adding-analytics.md +0 -1
  124. package/dist/docs/development/guides/changelogs/02-adding-changelogs.md +2 -2
  125. package/dist/docs/development/guides/changelogs/03-automated-changelogs.md +2 -2
  126. package/dist/docs/development/guides/changelogs/04-reference.md +77 -0
  127. package/dist/docs/development/guides/changelogs/_category_.json +2 -2
  128. package/dist/docs/development/guides/domains/01-introduction.md +14 -9
  129. package/dist/docs/development/guides/domains/{02-creating-domains/02-adding-domains.md → 02-create-domain.md} +32 -16
  130. package/dist/docs/development/guides/domains/{02-creating-domains/02a-subdomains.md → 03-model-subdomains.md} +22 -10
  131. package/dist/docs/development/guides/domains/03-ownership-and-language/01-owners.md +1 -1
  132. package/dist/docs/development/guides/domains/03-ownership-and-language/02-adding-ubiquitous-language.md +2 -6
  133. package/dist/docs/development/guides/domains/03-ownership-and-language/_category_.json +2 -2
  134. package/dist/docs/development/guides/domains/04-add-resources-to-domains/01-add-systems-to-domains.md +154 -0
  135. package/dist/docs/development/guides/domains/{02-creating-domains/03-adding-services-to-domains.md → 04-add-resources-to-domains/02-add-services-to-domains.md} +6 -37
  136. package/dist/docs/development/guides/domains/{02-creating-domains/04-adding-messages-to-domains.md → 04-add-resources-to-domains/03-add-messages-to-domains.md} +4 -6
  137. package/dist/docs/development/guides/domains/{02-creating-domains/05-adding-data-products-to-domains.md → 04-add-resources-to-domains/04-add-data-products-to-domains.md} +6 -5
  138. package/dist/docs/development/guides/domains/04-add-resources-to-domains/05-add-entities-to-domains.md +115 -0
  139. package/dist/docs/development/guides/domains/04-add-resources-to-domains/_category_.json +11 -0
  140. package/dist/docs/development/guides/domains/{08-domain-integration-map.md → 06-visualize-domains/01-domain-integration-map.md} +5 -6
  141. package/dist/docs/development/guides/domains/06-visualize-domains/_category_.json +12 -0
  142. package/dist/docs/development/guides/domains/{04-versioning-and-changelogs/01-versioning.md → 07-version-domains.md} +5 -6
  143. package/dist/docs/development/guides/domains/{04-versioning-and-changelogs/02-changelog.md → 08-add-changelog.md} +6 -7
  144. package/dist/docs/development/guides/domains/09-reference.md +517 -0
  145. package/dist/docs/development/guides/owners/01-what-are-teams-and-users.md +46 -0
  146. package/dist/docs/development/guides/owners/02-create-team.md +110 -0
  147. package/dist/docs/development/guides/owners/03-create-user.md +99 -0
  148. package/dist/docs/development/guides/owners/05-teams-reference.md +144 -0
  149. package/dist/docs/development/guides/owners/06-users-reference.md +128 -0
  150. package/dist/docs/development/guides/owners/_category_.json +2 -2
  151. package/dist/docs/development/guides/owners/automated-teams-and-users/_category_.json +11 -0
  152. package/dist/docs/development/guides/owners/automated-teams-and-users/create-your-own-connector.md +108 -0
  153. package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-github.md +156 -0
  154. package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-microsoft-entra.md +253 -0
  155. package/dist/docs/development/guides/resources/_category_.json +11 -0
  156. package/dist/docs/development/guides/resources/adrs/01-introduction.md +37 -0
  157. package/dist/docs/development/guides/resources/adrs/02-creating-adrs.md +211 -0
  158. package/dist/docs/development/guides/resources/adrs/03-linking-resources.md +52 -0
  159. package/dist/docs/development/guides/resources/adrs/04-relationships.md +80 -0
  160. package/dist/docs/development/guides/resources/adrs/06-reference.md +247 -0
  161. package/dist/docs/development/guides/resources/adrs/_category_.json +11 -0
  162. package/dist/docs/development/guides/{agents → resources/agents}/01-introduction.md +1 -16
  163. package/dist/docs/development/guides/resources/agents/02-create-agent.md +188 -0
  164. package/dist/docs/development/guides/{agents → resources/agents}/03-adding-tools.md +3 -4
  165. package/dist/docs/development/guides/{agents → resources/agents}/04-model-metadata.md +2 -2
  166. package/dist/docs/development/guides/{agents/adding-to-agents/01-messages.md → resources/agents/05-add-messages-to-agents.md} +5 -4
  167. package/dist/docs/development/guides/{agents/adding-to-agents/02-datastores.md → resources/agents/06-add-data-stores-to-agents.md} +4 -15
  168. package/dist/docs/development/guides/resources/agents/11-reference.md +238 -0
  169. package/dist/docs/development/guides/{agents → resources/agents}/_category_.json +2 -2
  170. package/dist/docs/development/guides/resources/data/01-introduction.md +15 -0
  171. package/dist/docs/development/guides/resources/data/02-adding-data.md +184 -0
  172. package/dist/docs/development/guides/resources/data/03-add-read-write-relationships.md +128 -0
  173. package/dist/docs/development/guides/resources/data/04-reference.md +211 -0
  174. package/dist/docs/development/guides/{data → resources/data}/_category_.json +3 -3
  175. package/dist/docs/development/guides/{data-products → resources/data-products}/01-introduction.md +1 -17
  176. package/dist/docs/development/guides/resources/data-products/02-adding-data-products.md +174 -0
  177. package/dist/docs/development/guides/{data-products → resources/data-products}/03-inputs-and-outputs.md +4 -6
  178. package/dist/docs/development/guides/{data-products → resources/data-products}/04-contracts.md +2 -4
  179. package/dist/docs/development/guides/resources/data-products/07-reference.md +201 -0
  180. package/dist/docs/development/guides/{data-products → resources/data-products}/_category_.json +3 -3
  181. package/dist/docs/development/guides/resources/entities/01-introduction.md +26 -0
  182. package/dist/docs/development/guides/resources/entities/02-create-entity.md +162 -0
  183. package/dist/docs/development/guides/resources/entities/03-model-entity-relationships.md +115 -0
  184. package/dist/docs/development/guides/resources/entities/04-add-entities-to-resources.md +188 -0
  185. package/dist/docs/development/guides/resources/entities/05-entity-maps.md +48 -0
  186. package/dist/docs/development/guides/resources/entities/06-reference.md +273 -0
  187. package/dist/docs/development/guides/{domains/05-entities → resources/entities}/_category_.json +4 -4
  188. package/dist/docs/development/guides/resources/flows/01-introduction.md +28 -0
  189. package/dist/docs/development/guides/resources/flows/02-create-flow.md +304 -0
  190. package/dist/docs/development/guides/{flows/03-flow-nodes.md → resources/flows/03-model-flow-steps.md} +6 -6
  191. package/dist/docs/development/guides/resources/flows/04-add-flows-to-resources.md +149 -0
  192. package/dist/docs/development/guides/resources/flows/06-reference.md +226 -0
  193. package/dist/docs/development/guides/{flows → resources/flows}/_category_.json +3 -3
  194. package/dist/docs/development/guides/resources/messages/01-what-are-messages.md +104 -0
  195. package/dist/docs/development/guides/{messages/events/01-introduction.md → resources/messages/02-message-types/01-events.md} +3 -7
  196. package/dist/docs/development/guides/{messages/commands/01-introduction.md → resources/messages/02-message-types/02-commands.md} +4 -7
  197. package/dist/docs/development/guides/resources/messages/02-message-types/03-queries.md +20 -0
  198. package/dist/docs/development/guides/resources/messages/02-message-types/_category_.json +11 -0
  199. package/dist/docs/development/guides/resources/messages/03-create-messages/01-create-event.md +137 -0
  200. package/dist/docs/development/guides/resources/messages/03-create-messages/02-create-command.md +156 -0
  201. package/dist/docs/development/guides/resources/messages/03-create-messages/03-create-query.md +158 -0
  202. package/dist/docs/development/guides/{messages/common/02-draft-messages.md → resources/messages/03-create-messages/04-create-draft-message.md} +5 -7
  203. package/dist/docs/development/guides/resources/messages/03-create-messages/_category_.json +11 -0
  204. package/dist/docs/development/guides/resources/messages/04-connect-messages/01-map-producers-and-consumers.md +32 -0
  205. package/dist/docs/development/guides/resources/messages/04-connect-messages/02-shared-messages-across-boundaries.md +170 -0
  206. package/dist/docs/development/guides/{messages/common/09-grouping-messages.md → resources/messages/04-connect-messages/03-group-messages.md} +2 -4
  207. package/dist/docs/development/guides/resources/messages/04-connect-messages/_category_.json +11 -0
  208. package/dist/docs/development/guides/{channels → resources/messages/04-message-channels}/01-introduction.md +4 -28
  209. package/dist/docs/development/guides/{channels → resources/messages/04-message-channels}/02-adding-channels.md +77 -62
  210. package/dist/docs/development/guides/{channels → resources/messages/04-message-channels}/04-adding-messages-to-services.md +10 -14
  211. package/dist/docs/development/guides/resources/messages/04-message-channels/05-reference.md +177 -0
  212. package/dist/docs/development/guides/{channels → resources/messages/04-message-channels}/_category_.json +3 -3
  213. package/dist/docs/development/guides/{messages/common/04-versioning.md → resources/messages/08-versioning-and-lifecycle/01-version-messages.md} +39 -4
  214. package/dist/docs/development/guides/{messages/common/05-changelog.md → resources/messages/08-versioning-and-lifecycle/02-add-changelog.md} +5 -6
  215. package/dist/docs/development/guides/{messages/common/02-deprecating.md → resources/messages/08-versioning-and-lifecycle/03-deprecate-messages.md} +4 -4
  216. package/dist/docs/development/guides/resources/messages/08-versioning-and-lifecycle/_category_.json +11 -0
  217. package/dist/docs/development/guides/{messages/common/02-examples.md → resources/messages/09-add-usage-examples.md} +59 -22
  218. package/dist/docs/development/guides/resources/messages/10-reference.md +439 -0
  219. package/dist/docs/development/guides/resources/messages/_category_.json +11 -0
  220. package/dist/docs/development/guides/resources/schemas/01-what-are-schemas-and-specifications.md +25 -0
  221. package/dist/docs/development/guides/resources/schemas/02-add-schemas-to-messages.md +63 -0
  222. package/dist/docs/development/guides/resources/schemas/03-add-schemas-to-data-stores.md +90 -0
  223. package/dist/docs/development/guides/{services/adding-to-services/04-openapi.md → resources/schemas/03-add-specifications-to-services/01-add-openapi-specifications.md} +33 -24
  224. package/dist/docs/development/guides/{services/adding-to-services/05-asyncapi.md → resources/schemas/03-add-specifications-to-services/02-add-asyncapi-specifications.md} +33 -23
  225. package/dist/docs/development/guides/{services/adding-to-services/06-graphql.md → resources/schemas/03-add-specifications-to-services/03-add-graphql-schemas.md} +36 -26
  226. package/dist/docs/development/guides/resources/schemas/03-add-specifications-to-services/_category_.json +11 -0
  227. package/dist/docs/development/guides/{schemas/02-schema-explorer.md → resources/schemas/04-explore-schemas/01-schema-explorer.md} +3 -26
  228. package/dist/docs/development/guides/{schemas/06-fields-explorer.md → resources/schemas/04-explore-schemas/02-fields-explorer.md} +8 -10
  229. package/dist/docs/development/guides/{schemas/05-field-usage.md → resources/schemas/04-explore-schemas/03-consumer-field-usage.md} +1 -3
  230. package/dist/docs/development/guides/resources/schemas/04-explore-schemas/_category_.json +11 -0
  231. package/dist/docs/development/guides/{schemas/03-schema-api.md → resources/schemas/05-schema-api.md} +6 -11
  232. package/dist/docs/development/guides/{schemas/04-schema-mcp.md → resources/schemas/06-schema-mcp.md} +5 -6
  233. package/dist/docs/development/guides/resources/schemas/07-reference.md +23 -0
  234. package/dist/docs/development/guides/{schemas → resources/schemas}/_category_.json +3 -3
  235. package/dist/docs/development/guides/resources/services/01-introduction.md +27 -0
  236. package/dist/docs/development/guides/resources/services/02-create-service.md +195 -0
  237. package/dist/docs/development/guides/resources/services/03-create-external-service.md +52 -0
  238. package/dist/docs/development/guides/resources/services/04-add-resources-to-services/01-add-messages-to-services.md +142 -0
  239. package/dist/docs/development/guides/resources/services/04-add-resources-to-services/02-add-data-stores-to-services.md +45 -0
  240. package/dist/docs/development/guides/{services/adding-to-services/03-entities.md → resources/services/04-add-resources-to-services/03-add-entities-to-services.md} +7 -11
  241. package/dist/docs/development/guides/resources/services/04-add-resources-to-services/_category_.json +11 -0
  242. package/dist/docs/development/guides/{services/ownership-and-components/01-owners.md → resources/services/06-ownership-and-components/01-add-service-owners.md} +3 -4
  243. package/dist/docs/development/guides/{services/ownership-and-components/02-components.md → resources/services/06-ownership-and-components/02-use-components.md} +4 -4
  244. package/dist/docs/development/guides/resources/services/06-ownership-and-components/_category_.json +11 -0
  245. package/dist/docs/development/guides/{services/versioning-and-lifecycle/01-versioning.md → resources/services/07-versioning-and-lifecycle/01-version-services.md} +4 -3
  246. package/dist/docs/development/guides/{services/versioning-and-lifecycle/02-changelog.md → resources/services/07-versioning-and-lifecycle/02-add-changelog.md} +5 -5
  247. package/dist/docs/development/guides/{services/versioning-and-lifecycle/03-deprecating.md → resources/services/07-versioning-and-lifecycle/03-deprecate-services.md} +5 -4
  248. package/dist/docs/development/guides/resources/services/07-versioning-and-lifecycle/_category_.json +11 -0
  249. package/dist/docs/development/guides/resources/services/08-reference.md +295 -0
  250. package/dist/docs/development/guides/{services → resources/services}/_category_.json +3 -3
  251. package/dist/docs/development/guides/systems/01-introduction.md +119 -0
  252. package/dist/docs/development/guides/systems/02-create-system.md +127 -0
  253. package/dist/docs/development/guides/systems/03-add-resources-to-systems.md +157 -0
  254. package/dist/docs/development/guides/systems/04-model-relationships-and-actors.md +86 -0
  255. package/dist/docs/development/guides/systems/05-system-context-maps.md +67 -0
  256. package/dist/docs/development/guides/systems/06-reference.md +329 -0
  257. package/dist/docs/development/guides/{messages/queries → systems}/_category_.json +5 -5
  258. package/dist/docs/development/license-keys/_category_.json +1 -1
  259. package/dist/docs/development/license-keys/integrations.md +20 -9
  260. package/dist/docs/development/license-keys/overview.md +7 -18
  261. package/dist/docs/development/license-keys/plans.md +9 -18
  262. package/dist/docs/development/upgrading/v2.md +1 -2
  263. package/dist/docs/development/upgrading/v3.md +2 -3
  264. package/dist/docs/development/upgrading/v4.md +377 -0
  265. package/dist/docs/editor/00-overview.md +3 -3
  266. package/dist/docs/editor/01-first-edit.md +1 -1
  267. package/dist/docs/editor/explanation/markdown-mdx-git.md +1 -1
  268. package/dist/docs/editor/how-to/add-schemas-and-specifications.md +5 -5
  269. package/dist/docs/editor/how-to/edit-resource.md +1 -1
  270. package/dist/docs/editor/how-to/use-flow-editor.md +5 -5
  271. package/dist/docs/editor/how-to/use-slash-commands.md +2 -2
  272. package/dist/docs/editor/reference/supported-content.md +2 -2
  273. package/dist/docs/editor/reference/supported-resources.md +14 -14
  274. package/dist/docs/plugins/amazon-apigateway/00-intro.md +8 -8
  275. package/dist/docs/plugins/amazon-apigateway/01-installation.md +10 -12
  276. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +5 -4
  277. package/dist/docs/plugins/apicurio/00-intro.md +8 -8
  278. package/dist/docs/plugins/apicurio/01-installation.md +12 -2
  279. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +7 -9
  280. package/dist/docs/plugins/apicurio/03-features.md +2 -2
  281. package/dist/docs/plugins/asyncapi/00-intro.md +8 -8
  282. package/dist/docs/plugins/asyncapi/01-installation.md +10 -11
  283. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +5 -5
  284. package/dist/docs/plugins/asyncapi/03-features.md +9 -9
  285. package/dist/docs/plugins/aws-glue-registry/00-intro.md +8 -8
  286. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +16 -6
  287. package/dist/docs/plugins/aws-glue-registry/01-features.md +2 -2
  288. package/dist/docs/plugins/azure-schema-registry/00-intro.md +10 -10
  289. package/dist/docs/plugins/azure-schema-registry/01-installation.md +15 -5
  290. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +4 -4
  291. package/dist/docs/plugins/azure-schema-registry/04-examples.md +1 -1
  292. package/dist/docs/plugins/backstage/00-intro.md +3 -3
  293. package/dist/docs/plugins/backstage/01-installation.md +7 -15
  294. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +8 -8
  295. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +12 -4
  296. package/dist/docs/plugins/confluent-schema-registry/02-plugin-configuration.md +3 -3
  297. package/dist/docs/plugins/eventbridge/00a-installation.md +21 -21
  298. package/dist/docs/plugins/eventbridge/01-features.md +3 -3
  299. package/dist/docs/plugins/eventbridge/03-api.md +5 -5
  300. package/dist/docs/plugins/eventcatalog-federation/00-introduction.md +6 -6
  301. package/dist/docs/plugins/eventcatalog-federation/01-installation.md +10 -11
  302. package/dist/docs/plugins/eventcatalog-federation/04-configuration.md +2 -2
  303. package/dist/docs/plugins/eventcatalog-federation/05-setup-team-catalog.md +5 -6
  304. package/dist/docs/plugins/github/00-intro.md +8 -8
  305. package/dist/docs/plugins/github/01-installation.md +12 -5
  306. package/dist/docs/plugins/graphql/00-intro.md +8 -8
  307. package/dist/docs/plugins/graphql/01-installation.md +11 -11
  308. package/dist/docs/plugins/graphql/02-plugin-configuration.md +3 -4
  309. package/dist/docs/plugins/graphql/03-features.md +4 -4
  310. package/dist/docs/plugins/openapi/00-intro.md +8 -8
  311. package/dist/docs/plugins/openapi/01-installation.md +10 -11
  312. package/dist/docs/plugins/openapi/02-plugin-configuration.md +7 -6
  313. package/dist/docs/plugins/openapi/03-features.md +6 -7
  314. package/dist/docs/tutorial/01-start-here.md +75 -0
  315. package/dist/docs/tutorial/02-install-eventcatalog.md +98 -0
  316. package/dist/docs/tutorial/04-add-ownership.md +184 -0
  317. package/dist/docs/tutorial/04-create-event.md +176 -0
  318. package/dist/docs/tutorial/05-create-a-domain.md +133 -0
  319. package/dist/docs/tutorial/05-publish-event.md +82 -0
  320. package/dist/docs/tutorial/06-consume-event.md +130 -0
  321. package/dist/docs/tutorial/06-create-a-service.md +99 -0
  322. package/dist/docs/tutorial/11-visualize-your-catalog.md +105 -0
  323. package/dist/docs/tutorial/12-build-your-catalog.md +79 -0
  324. package/dist/docs/tutorial/14-next-steps.md +108 -0
  325. package/dist/docs/tutorial/_category_.json +12 -0
  326. package/dist/eventcatalog.cjs +1 -1
  327. package/dist/eventcatalog.js +5 -5
  328. package/dist/generate.cjs +1 -1
  329. package/dist/generate.js +3 -3
  330. package/dist/utils/cli-logger.cjs +1 -1
  331. package/dist/utils/cli-logger.js +2 -2
  332. package/eventcatalog/public/android-chrome-192x192.png +0 -0
  333. package/eventcatalog/public/android-chrome-512x512.png +0 -0
  334. package/eventcatalog/public/apple-touch-icon.png +0 -0
  335. package/eventcatalog/public/favicon-16x16.png +0 -0
  336. package/eventcatalog/public/favicon-32x32.png +0 -0
  337. package/eventcatalog/public/favicon-48x48.png +0 -0
  338. package/eventcatalog/public/favicon-96x96.png +0 -0
  339. package/eventcatalog/public/favicon.ico +0 -0
  340. package/eventcatalog/public/favicon.svg +8 -0
  341. package/eventcatalog/src/components/Seo.astro +5 -1
  342. package/eventcatalog/src/enterprise/auth/error.astro +3 -1
  343. package/eventcatalog/src/enterprise/auth/login.astro +3 -1
  344. package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +4 -1
  345. package/eventcatalog/src/pages/studio.astro +3 -1
  346. package/eventcatalog/src/toolkit/layouts/Layout.astro +7 -1
  347. package/package.json +3 -3
  348. package/dist/docs/api/03-domain-api.md +0 -440
  349. package/dist/docs/api/04-service-api.md +0 -414
  350. package/dist/docs/api/05-command-api.md +0 -365
  351. package/dist/docs/api/06-event-api.md +0 -364
  352. package/dist/docs/api/06-query-api.md +0 -362
  353. package/dist/docs/api/08-channel-api.md +0 -363
  354. package/dist/docs/api/09-flow-api.md +0 -446
  355. package/dist/docs/api/10-entity-api.md +0 -330
  356. package/dist/docs/api/11-data-api.md +0 -273
  357. package/dist/docs/api/12-data-product-api.md +0 -445
  358. package/dist/docs/development/components/external-diagram-embeds/05-icepanel.md +0 -68
  359. package/dist/docs/development/components/external-diagram-embeds/_category_.json +0 -12
  360. package/dist/docs/development/customization/custom-components/00-what-is-mdx.md +0 -73
  361. package/dist/docs/development/customization/custom-components/01-introduction.md +0 -28
  362. package/dist/docs/development/customization/custom-components/02-adding-components.md +0 -145
  363. package/dist/docs/development/customization/custom-components/03-component-styling.md +0 -27
  364. package/dist/docs/development/customization/custom-components/04-javascript-components.md +0 -32
  365. package/dist/docs/development/customization/custom-components/_category_.json +0 -11
  366. package/dist/docs/development/customization/customize-sidebars/00-application-sidebar.md +0 -85
  367. package/dist/docs/development/customization/customize-sidebars/_category_.json +0 -11
  368. package/dist/docs/development/developer-tools/github-action.md +0 -147
  369. package/dist/docs/development/guides/12-customize-your-sidebar.md +0 -12
  370. package/dist/docs/development/guides/agents/02-adding-agents.md +0 -152
  371. package/dist/docs/development/guides/agents/adding-to-agents/_category_.json +0 -10
  372. package/dist/docs/development/guides/agents/ownership/01-owners.md +0 -67
  373. package/dist/docs/development/guides/agents/ownership/_category_.json +0 -11
  374. package/dist/docs/development/guides/agents/versioning-and-lifecycle/01-versioning.md +0 -48
  375. package/dist/docs/development/guides/agents/versioning-and-lifecycle/02-changelog.md +0 -40
  376. package/dist/docs/development/guides/agents/versioning-and-lifecycle/03-deprecating.md +0 -41
  377. package/dist/docs/development/guides/agents/versioning-and-lifecycle/_category_.json +0 -11
  378. package/dist/docs/development/guides/channels/ownership-and-components/01-owners.md +0 -44
  379. package/dist/docs/development/guides/channels/ownership-and-components/02-components.md +0 -16
  380. package/dist/docs/development/guides/channels/ownership-and-components/_category_.json +0 -11
  381. package/dist/docs/development/guides/channels/versioning-and-lifecycle/01-versioning.md +0 -31
  382. package/dist/docs/development/guides/channels/versioning-and-lifecycle/02-changelog.md +0 -56
  383. package/dist/docs/development/guides/channels/versioning-and-lifecycle/_category_.json +0 -11
  384. package/dist/docs/development/guides/data/01-introduction.md +0 -34
  385. package/dist/docs/development/guides/data/02-adding-data.md +0 -86
  386. package/dist/docs/development/guides/data/03a-adding-schemas-to-data-stores.md +0 -73
  387. package/dist/docs/development/guides/data/ownership-and-components/01-owners.md +0 -45
  388. package/dist/docs/development/guides/data/ownership-and-components/02-components.md +0 -17
  389. package/dist/docs/development/guides/data/ownership-and-components/_category_.json +0 -11
  390. package/dist/docs/development/guides/data/versioning-and-lifecycle/01-versioning.md +0 -32
  391. package/dist/docs/development/guides/data/versioning-and-lifecycle/02-changelog.md +0 -57
  392. package/dist/docs/development/guides/data/versioning-and-lifecycle/03-deprecating.md +0 -71
  393. package/dist/docs/development/guides/data/versioning-and-lifecycle/_category_.json +0 -11
  394. package/dist/docs/development/guides/data-products/02-adding-data-products.md +0 -157
  395. package/dist/docs/development/guides/data-products/05-versioning.md +0 -240
  396. package/dist/docs/development/guides/data-products/06-adding-to-domains.md +0 -52
  397. package/dist/docs/development/guides/diagrams/01-introduction.md +0 -78
  398. package/dist/docs/development/guides/diagrams/02-creating-diagrams.md +0 -195
  399. package/dist/docs/development/guides/diagrams/04-versioning-diagrams.md +0 -204
  400. package/dist/docs/development/guides/diagrams/05-comparing-diagrams.md +0 -145
  401. package/dist/docs/development/guides/diagrams/06-diagrams-with-llms.md +0 -165
  402. package/dist/docs/development/guides/domains/02-creating-domains/_category_.json +0 -11
  403. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/_category_.json +0 -10
  404. package/dist/docs/development/guides/domains/05-entities/01-introduction.md +0 -24
  405. package/dist/docs/development/guides/domains/05-entities/02-adding-entities.md +0 -157
  406. package/dist/docs/development/guides/domains/05-entities/03-adding-entities-to-domains.md +0 -30
  407. package/dist/docs/development/guides/domains/05-entities/04-domain-entity-map.md +0 -134
  408. package/dist/docs/development/guides/flows/01-introduction.md +0 -36
  409. package/dist/docs/development/guides/flows/02-adding-flows.md +0 -198
  410. package/dist/docs/development/guides/flows/04-adding-flows-to-services.md +0 -42
  411. package/dist/docs/development/guides/flows/05-adding-flows-to-domains.md +0 -43
  412. package/dist/docs/development/guides/flows/06-versioning.md +0 -27
  413. package/dist/docs/development/guides/flows/07-create-flow-with-ai.md +0 -171
  414. package/dist/docs/development/guides/messages/01-overview.md +0 -57
  415. package/dist/docs/development/guides/messages/_category_.json +0 -11
  416. package/dist/docs/development/guides/messages/commands/02-adding-commands.md +0 -131
  417. package/dist/docs/development/guides/messages/commands/_category_.json +0 -11
  418. package/dist/docs/development/guides/messages/common/01-map-to-producers-and-consumers.md +0 -37
  419. package/dist/docs/development/guides/messages/common/02-adding-schemas.md +0 -58
  420. package/dist/docs/development/guides/messages/common/03-owners.md +0 -40
  421. package/dist/docs/development/guides/messages/common/07-components.md +0 -12
  422. package/dist/docs/development/guides/messages/common/08-shared-messages-across-boundaries.md +0 -70
  423. package/dist/docs/development/guides/messages/common/_category_.json +0 -11
  424. package/dist/docs/development/guides/messages/events/02-adding-events.md +0 -130
  425. package/dist/docs/development/guides/messages/events/_category_.json +0 -11
  426. package/dist/docs/development/guides/messages/queries/01-introduction.md +0 -25
  427. package/dist/docs/development/guides/messages/queries/02-adding-queries.md +0 -130
  428. package/dist/docs/development/guides/owners/teams/01-introduction.md +0 -21
  429. package/dist/docs/development/guides/owners/teams/02-adding-teams.md +0 -73
  430. package/dist/docs/development/guides/owners/teams/_category_.json +0 -11
  431. package/dist/docs/development/guides/owners/users/01-introduction.md +0 -20
  432. package/dist/docs/development/guides/owners/users/02-adding-users.md +0 -69
  433. package/dist/docs/development/guides/owners/users/_category_.json +0 -11
  434. package/dist/docs/development/guides/schemas/01-introduction.md +0 -64
  435. package/dist/docs/development/guides/services/01-introduction.md +0 -33
  436. package/dist/docs/development/guides/services/02-adding-services.md +0 -113
  437. package/dist/docs/development/guides/services/03-creating-external-systems.md +0 -71
  438. package/dist/docs/development/guides/services/adding-to-services/01-messages.md +0 -229
  439. package/dist/docs/development/guides/services/adding-to-services/02-datastores.md +0 -77
  440. package/dist/docs/development/guides/services/adding-to-services/_category_.json +0 -10
  441. package/dist/docs/development/guides/services/ownership-and-components/_category_.json +0 -11
  442. package/dist/docs/development/guides/services/versioning-and-lifecycle/_category_.json +0 -11
  443. /package/dist/docs/development/ask-your-architecture/{04-skills → 05-skills}/01-introduction.md +0 -0
  444. /package/dist/docs/development/ask-your-architecture/{04-skills → 05-skills}/02-installation.md +0 -0
  445. /package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/01-introduction.md +0 -0
  446. /package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/02-slack-app-setup.md +0 -0
  447. /package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/04-deployment.md +0 -0
  448. /package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/05-usage.md +0 -0
  449. /package/dist/docs/development/ask-your-architecture/{05-slack-integration → 06-slack-integration}/06-troubleshooting.md +0 -0
  450. /package/dist/docs/development/guides/{channels → resources/messages/04-message-channels}/09-configuration +0 -0
@@ -0,0 +1,253 @@
1
+ ---
2
+ sidebar_position: 2
3
+ slug: /development/guides/owners/sync-from-microsoft-entra
4
+ keywords:
5
+ - EventCatalog Microsoft Entra connector
6
+ - sync Microsoft Entra teams users
7
+ - sync Azure AD groups users
8
+ - directory connector
9
+ sidebar_label: Sync from Microsoft Entra ID
10
+ title: Sync from Microsoft Entra ID
11
+ description: Sync Microsoft Entra ID groups and direct members into EventCatalog as teams and users.
12
+ ---
13
+
14
+ import AddedIn from '@site/src/components/MDX/AddedIn';
15
+ import PlanBanner from '@site/src/components/MDX/PlanBanner';
16
+
17
+ <PlanBanner plan="Scale" />
18
+ <AddedIn version="3.45.0" pkg="@eventcatalog/connectors" />
19
+
20
+ In EventCatalog, you can import and sync your users and teams directly from Microsoft Entra ID. Instead of adding people and teams by hand, you point EventCatalog at selected Entra groups and the catalog keeps those teams and their direct members in sync.
21
+
22
+ ```mermaid
23
+ flowchart LR
24
+ E[Microsoft Entra ID] --> C[Microsoft Entra connector]
25
+ C --> EC[EventCatalog]
26
+ EC --> U[Users & Teams]
27
+ ```
28
+
29
+ ## Why sync from Microsoft Entra ID
30
+
31
+ Teams and users in EventCatalog are used to assign ownership to resources such as services, events, domains, and more. Many organizations already manage team membership in Microsoft Entra ID. Syncing from Entra keeps ownership data aligned with the directory your organization already maintains.
32
+
33
+ ## How it works
34
+
35
+ When EventCatalog starts, the connector fetches the configured Entra groups from Microsoft Graph. Each selected group becomes an EventCatalog team, and each direct enabled user member becomes an EventCatalog user.
36
+
37
+ Synced teams and users appear alongside locally authored users and teams. Each synced entry is marked as read-only and surfaced in directory source badges so people know the source of truth is Microsoft Entra ID.
38
+
39
+ ## Install
40
+
41
+ ```bash
42
+ npm install @eventcatalog/connectors
43
+ ```
44
+
45
+ ## Configure
46
+
47
+ Import `microsoftEntraDirectory` and add it to the `directory.sources` array in `eventcatalog.config.js`:
48
+
49
+ ```js title="eventcatalog.config.js"
50
+ import { microsoftEntraDirectory } from '@eventcatalog/connectors';
51
+
52
+ export default {
53
+ // ... rest of config
54
+ directory: {
55
+ sources: [
56
+ microsoftEntraDirectory({
57
+ // Directory (tenant) ID from your Microsoft Entra app registration.
58
+ tenantId: process.env.AZURE_TENANT_ID,
59
+
60
+ // Application (client) ID from your Microsoft Entra app registration.
61
+ clientId: process.env.AZURE_CLIENT_ID,
62
+
63
+ // Client secret value from Certificates & secrets.
64
+ // Use the secret value, not the secret ID.
65
+ clientSecret: process.env.AZURE_CLIENT_SECRET,
66
+
67
+ // Entra groups to sync into EventCatalog as teams.
68
+ groups: [
69
+ {
70
+ // Stable Entra group Object ID. Recommended because it is unique and does not change if the group is renamed.
71
+ id: '00000000-0000-0000-0000-000000000000',
72
+
73
+ // Optional EventCatalog team id. If omitted, the connector slugifies the Entra group display name.
74
+ alias: 'platform',
75
+ },
76
+ {
77
+ // You can also sync by exact display name. If more than one group matches, use the group Object ID instead.
78
+ displayName: 'Architecture Guild',
79
+ },
80
+ ],
81
+ }),
82
+ ],
83
+ },
84
+ };
85
+ ```
86
+
87
+ ## Microsoft Entra app registration
88
+
89
+ The connector uses Microsoft Graph with the OAuth client credentials flow.
90
+
91
+ 1. In Azure Portal, open **Microsoft Entra ID**.
92
+ 2. Go to **App registrations** and create a new app registration.
93
+ 3. Copy the **Directory (tenant) ID** into `AZURE_TENANT_ID`.
94
+ 4. Copy the **Application (client) ID** into `AZURE_CLIENT_ID`.
95
+ 5. Go to **Certificates & secrets** and create a new client secret.
96
+ 6. Copy the secret **Value** into `AZURE_CLIENT_SECRET`. You do not need the secret ID.
97
+ 7. Go to **API permissions** and add these Microsoft Graph **Application permissions**:
98
+ - `Group.Read.All` - read the configured groups.
99
+ - `GroupMember.Read.All` - read direct members of the configured groups.
100
+ - `User.Read.All` - read user profile fields for synced members.
101
+ 8. Grant admin consent for the permissions.
102
+
103
+ Pass the credentials with environment variables:
104
+
105
+ ```bash
106
+ AZURE_TENANT_ID=00000000-0000-0000-0000-000000000000 \
107
+ AZURE_CLIENT_ID=00000000-0000-0000-0000-000000000000 \
108
+ AZURE_CLIENT_SECRET=your-secret-value \
109
+ npx eventcatalog dev
110
+ ```
111
+
112
+ ## Options
113
+
114
+ | Option | Type | Required | Description |
115
+ |---|---|---|---|
116
+ | `tenantId` | `string` | Yes | Microsoft Entra tenant ID. |
117
+ | `clientId` | `string` | Yes | Application/client ID for the app registration. |
118
+ | `clientSecret` | `string` | Yes | Client secret value for the app registration. |
119
+ | `groups` | `(string \| { id: string; alias?: string } \| { displayName: string; alias?: string })[]` | Yes | Entra groups to sync. Group IDs are recommended. |
120
+ | `users` | `boolean` | No | When `true` (default), direct members of every synced group are also synced as users. Set to `false` to sync teams only. |
121
+ | `includeDisabledUsers` | `boolean` | No | Disabled users are excluded by default. Set to `true` to include them. |
122
+ | `graphBaseUrl` | `string` | No | Override the Microsoft Graph base URL. Defaults to `https://graph.microsoft.com/v1.0`. Useful for sovereign cloud environments. |
123
+ | `tokenUrl` | `string` | No | Override the OAuth token URL. Defaults to `https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token`. Useful for sovereign cloud environments. |
124
+
125
+ ## Selecting groups
126
+
127
+ Groups can be configured by stable group ID:
128
+
129
+ ```js
130
+ microsoftEntraDirectory({
131
+ tenantId: process.env.AZURE_TENANT_ID,
132
+ clientId: process.env.AZURE_CLIENT_ID,
133
+ clientSecret: process.env.AZURE_CLIENT_SECRET,
134
+ groups: [
135
+ {
136
+ // Stable Entra group Object ID. Recommended because it is unique and does not change if the group is renamed.
137
+ id: 'e3d11d65-178c-45ff-a9e0-a1d4b74006ff',
138
+
139
+ // Optional EventCatalog team id. Use this in owner frontmatter, for example `owners: ['platform-engineering']`.
140
+ alias: 'platform-engineering',
141
+ },
142
+ ],
143
+ });
144
+ ```
145
+
146
+ You can also configure a group by exact display name:
147
+
148
+ ```js
149
+ microsoftEntraDirectory({
150
+ tenantId: process.env.AZURE_TENANT_ID,
151
+ clientId: process.env.AZURE_CLIENT_ID,
152
+ clientSecret: process.env.AZURE_CLIENT_SECRET,
153
+ groups: [
154
+ {
155
+ // Exact Entra group display name. If more than one group has this name, use the group Object ID instead.
156
+ displayName: 'Platform Engineering',
157
+
158
+ // Optional EventCatalog team id. If omitted, the connector slugifies the display name.
159
+ alias: 'platform-engineering',
160
+ },
161
+ ],
162
+ });
163
+ ```
164
+
165
+ Group IDs are recommended because they are stable and unique. If a `displayName` lookup finds no groups or more than one group, EventCatalog stops the build and asks you to use the group ID instead.
166
+
167
+ ## What gets synced
168
+
169
+ ### Teams
170
+
171
+ Each configured Entra group creates a team entry with:
172
+
173
+ - `id` set to `alias` when provided, otherwise a slugified version of the Entra group display name.
174
+ - `name` taken from the Entra group display name.
175
+ - `summary` taken from the Entra group description.
176
+ - `email` taken from the Entra group mail address when available.
177
+ - `source.provider` set to `microsoft-entra`.
178
+ - `source.id` set to the Entra group object ID.
179
+ - A read-only note explaining the team is managed in Microsoft Entra ID.
180
+
181
+ ### Users
182
+
183
+ Users are synced only from the configured groups. When `users` is `true`, every direct enabled user member of each synced group is fetched and created as a user entry with:
184
+
185
+ - `id` set to the user's mail address when available.
186
+ - Guest user principal names such as `name_example.com#EXT#@tenant.onmicrosoft.com` normalized back to `name@example.com` when no mail address is available.
187
+ - `id` set to the user's user principal name when no mail address is available and the user is not a guest account.
188
+ - `id` set to the Microsoft Graph user object ID when no mail address or user principal name is available.
189
+ - `name` taken from the Entra user display name.
190
+ - `email` taken from the user's mail address or user principal name.
191
+ - `role` taken from the user's job title.
192
+ - `source.provider` set to `microsoft-entra`.
193
+ - `source.id` set to the Entra user object ID.
194
+ - A read-only note explaining the user is managed in Microsoft Entra ID.
195
+
196
+ Profile photos are not fetched. User avatars are optional in EventCatalog.
197
+
198
+ :::info Direct members only
199
+
200
+ The connector syncs direct user members of the configured groups. It does not expand nested groups or transitive membership in this version.
201
+
202
+ :::
203
+
204
+ ## Use synced owners
205
+
206
+ Synced teams and users behave identically to hand-authored ones. Reference them by their `id` in any resource frontmatter:
207
+
208
+ ```yaml title="services/order-service/index.md"
209
+ ---
210
+ id: OrderService
211
+ name: Order Service
212
+ owners:
213
+ - platform-engineering
214
+ - dave@eventcatalog.dev
215
+ ---
216
+ ```
217
+
218
+ ## Conflict strategy
219
+
220
+ When a locally authored user or team shares the same `id` as one returned by the connector, EventCatalog uses the `conflictStrategy` setting to decide what to do.
221
+
222
+ | Strategy | Behaviour |
223
+ |---|---|
224
+ | `local-wins` (default) | The local file is kept and the external entry is skipped. |
225
+ | `source-wins` | The external entry overwrites the local file. |
226
+ | `error` | EventCatalog throws an error and stops the build. |
227
+
228
+ Configure the strategy in `eventcatalog.config.js`:
229
+
230
+ ```js title="eventcatalog.config.js"
231
+ export default {
232
+ // ... rest of config
233
+ directory: {
234
+ conflictStrategy: 'local-wins',
235
+ sources: [ /* ... */ ],
236
+ },
237
+ };
238
+ ```
239
+
240
+ ## Sovereign cloud endpoints
241
+
242
+ For sovereign cloud environments, override the Graph and token endpoints:
243
+
244
+ ```js
245
+ microsoftEntraDirectory({
246
+ tenantId: process.env.AZURE_TENANT_ID,
247
+ clientId: process.env.AZURE_CLIENT_ID,
248
+ clientSecret: process.env.AZURE_CLIENT_SECRET,
249
+ groups: [{ id: '00000000-0000-0000-0000-000000000000' }],
250
+ graphBaseUrl: 'https://graph.microsoft.com/v1.0',
251
+ tokenUrl: 'https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token',
252
+ });
253
+ ```
@@ -0,0 +1,11 @@
1
+ {
2
+ "label": "Resources",
3
+ "position": 3,
4
+ "collapsible": true,
5
+ "collapsed": false,
6
+ "link": {
7
+ "type": "generated-index",
8
+ "slug": "/resources",
9
+ "description": "Guides for documenting EventCatalog resources such as services, messages, schemas, data stores, data products, entities, agents, flows, and architecture decision records."
10
+ }
11
+ }
@@ -0,0 +1,37 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog ADR
5
+ - architecture decision records
6
+ - ADR documentation
7
+ sidebar_label: What are ADRs?
8
+ title: What are architecture decision records?
9
+ description: Document and govern architectural choices alongside your catalog resources.
10
+ ---
11
+
12
+ import AddedIn from '@site/src/components/MDX/AddedIn';
13
+
14
+ [Architecture decision records (ADRs)](https://adr.github.io/) capture why your team made a particular design choice. In EventCatalog, ADRs are first-class resources that live alongside services, events, domains, and flows.
15
+
16
+ Architectural choices are often made once and then forgotten. When a new engineer joins or a design is revisited months later, the reasoning behind past decisions is usually lost.
17
+
18
+ Documenting ADRs in your catalog gives your team:
19
+
20
+ - **Context** — anyone can see what alternatives were considered and why a particular path was chosen.
21
+ - **Traceability** — decisions are linked directly to the services, events, domains, and flows they affect via `appliesTo`.
22
+ - **Lifecycle tracking** — each ADR has a status (`proposed`, `accepted`, `rejected`, `deprecated`, `superseded`) so it is clear which decisions are still in force.
23
+ - **AI-ready context** — because ADRs sit alongside the resources they govern, the [EventCatalog MCP server](/docs/development/ask-your-architecture/mcp-server/introduction) can surface the *why* behind your architecture to AI assistants, not just the *what*. When an LLM is reasoning about a service or event, it picks up the decisions, trade-offs, and constraints recorded in your ADRs.
24
+
25
+ ## Lifecycle statuses
26
+
27
+ Every ADR must declare a `status` field. The available values are:
28
+
29
+ | Status | Meaning |
30
+ | --- | --- |
31
+ | `proposed` | Under discussion, not yet accepted |
32
+ | `accepted` | In force |
33
+ | `rejected` | Considered and deliberately not adopted |
34
+ | `deprecated` | Was accepted but is being phased out |
35
+ | `superseded` | Replaced by a newer decision |
36
+
37
+ EventCatalog renders a colored badge for each status and shows a warning banner on `deprecated` and `superseded` pages so readers are directed to the current decision.
@@ -0,0 +1,211 @@
1
+ ---
2
+ sidebar_position: 2
3
+ keywords:
4
+ - EventCatalog ADR
5
+ - create architecture decision records
6
+ sidebar_label: Create an ADR
7
+ title: Create an ADR
8
+ description: Add architecture decision records to your catalog.
9
+ ---
10
+
11
+ import AddedIn from '@site/src/components/MDX/AddedIn';
12
+ import PromptBox from '@site/src/components/MDX/PromptBox';
13
+ import ProjectTree from '@site/src/components/MDX/ProjectTree';
14
+
15
+ [Architecture decision records (ADRs)](https://adr.github.io/) capture why your team made a particular design choice and can be rendered and assigned to resources in EventCatalog.
16
+
17
+ ![Architecture decision record page in EventCatalog](./img/adr-overview.png)
18
+
19
+ ## Creating an ADR
20
+
21
+ ### Automatic Creation
22
+
23
+ <PromptBox preview="Create a new EventCatalog ADR">
24
+ Read https://www.eventcatalog.dev/docs/development/guides/resources/adrs/creating-adrs.md and https://raw.githubusercontent.com/event-catalog/skills/refs/heads/main/skills/catalog-documentation-creator/references/adrs.md then help me create a new EventCatalog architecture decision record in my catalog.
25
+
26
+ Ask me for the decision title, context, decision, consequences, status, date, version, whether it belongs at the root of the catalog or inside a domain or system, and any resources it applies to. Then create the correct adrs/{'{ADR Name}'}/index.mdx, domains/{'{Domain Name}'}/adrs/{'{ADR Name}'}/index.mdx, or systems/{'{System Name}'}/adrs/{'{ADR Name}'}/index.mdx file with frontmatter and starter markdown.
27
+
28
+ If I do not know the status, use proposed. If I do not provide a date, use today's date. If the ADR affects existing resources, add them to appliesTo.
29
+
30
+ You can use MDX components found here https://raw.githubusercontent.com/event-catalog/skills/refs/heads/main/skills/catalog-documentation-creator/references/components.md
31
+ </PromptBox>
32
+
33
+ Copy this prompt and paste it into your coding agent. Your agent can help you choose where the ADR should live, create the right folder structure, and write the first draft of the decision record.
34
+
35
+ ### Manual Creation
36
+
37
+ ADRs live in an `adrs` folder. EventCatalog discovers any `index.mdx` file inside an `adrs` directory, regardless of where that directory lives in your catalog.
38
+
39
+ You can place ADRs:
40
+
41
+ At the root of your catalog:
42
+
43
+ <ProjectTree
44
+ items={[
45
+ {
46
+ name: 'adrs',
47
+ type: 'folder',
48
+ defaultOpen: true,
49
+ children: [
50
+ {
51
+ name: 'choose-kafka',
52
+ type: 'folder',
53
+ defaultOpen: true,
54
+ children: [{ name: 'index.mdx', highlight: true }],
55
+ },
56
+ ],
57
+ },
58
+ ]}
59
+ />
60
+
61
+ Inside a domain:
62
+
63
+ <ProjectTree
64
+ items={[
65
+ {
66
+ name: 'domains',
67
+ type: 'folder',
68
+ defaultOpen: true,
69
+ children: [
70
+ {
71
+ name: 'Orders',
72
+ type: 'folder',
73
+ defaultOpen: true,
74
+ children: [
75
+ {
76
+ name: 'adrs',
77
+ type: 'folder',
78
+ defaultOpen: true,
79
+ children: [
80
+ {
81
+ name: 'event-driven-orders',
82
+ type: 'folder',
83
+ defaultOpen: true,
84
+ children: [{ name: 'index.mdx', highlight: true }],
85
+ },
86
+ ],
87
+ },
88
+ ],
89
+ },
90
+ ],
91
+ },
92
+ ]}
93
+ />
94
+
95
+ ADRs can also live inside a system folder when the decision is specific to that system.
96
+
97
+ ## Create the ADR file
98
+
99
+ Create an `index.mdx` file for the ADR.
100
+
101
+ Here is a minimal ADR with all required fields.
102
+
103
+ ```md title="adrs/choose-kafka/index.mdx"
104
+ ---
105
+ # Unique identifier for the ADR. Used for URLs and references.
106
+ id: choose-kafka
107
+
108
+ # Display name rendered in EventCatalog.
109
+ name: Choose Kafka for domain event distribution
110
+
111
+ # Version of the ADR.
112
+ version: 1.0.0
113
+
114
+ # Current lifecycle status: proposed, accepted, rejected, deprecated, or superseded.
115
+ status: accepted
116
+
117
+ # Date the decision was made or proposed.
118
+ date: 2026-05-26
119
+ ---
120
+
121
+ ## Context
122
+
123
+ Services need a reliable backbone for cross-domain event distribution.
124
+
125
+ ## Decision
126
+
127
+ We will use Apache Kafka as the primary event bus for inter-domain communication.
128
+
129
+ ## Consequences
130
+
131
+ Teams gain reliable, ordered delivery with replay support. They also take on operational responsibility for the Kafka cluster.
132
+ ```
133
+
134
+ ## Add optional fields
135
+
136
+ Enrich the ADR with owners, decision makers, links to affected resources, and badges.
137
+
138
+ ```md title="adrs/choose-kafka/index.mdx"
139
+ ---
140
+ # Unique identifier for the ADR. Used for URLs and references.
141
+ id: choose-kafka
142
+
143
+ # Display name rendered in EventCatalog.
144
+ name: Choose Kafka for domain event distribution
145
+
146
+ # Short summary shown in lists and page headers.
147
+ summary: Kafka is the primary backbone for inter-domain event distribution.
148
+
149
+ # Version of the ADR.
150
+ version: 1.0.0
151
+
152
+ # Current lifecycle status: proposed, accepted, rejected, deprecated, or superseded.
153
+ status: accepted
154
+
155
+ # Date the decision was made or proposed.
156
+ date: 2026-05-26
157
+
158
+ # Optional owners. References team or user ids.
159
+ owners:
160
+ - platform-team
161
+
162
+ # Optional decision makers. References team or user ids.
163
+ decisionMakers:
164
+ - architecture-board
165
+
166
+ # Optional resources affected by this decision.
167
+ appliesTo:
168
+ - type: domain
169
+ id: Orders
170
+ - type: service
171
+ id: PaymentService
172
+ - type: event
173
+ id: PaymentAccepted
174
+
175
+ # Optional badges rendered on the ADR page.
176
+ badges:
177
+ - content: Messaging
178
+ backgroundColor: blue
179
+ textColor: blue
180
+ ---
181
+
182
+ ## Context
183
+
184
+ ...
185
+
186
+ ## Decision
187
+
188
+ ...
189
+
190
+ ## Consequences
191
+
192
+ ...
193
+ ```
194
+
195
+ ## Recommended body structure
196
+
197
+ EventCatalog does not enforce a particular body format, but the classic ADR structure works well.
198
+
199
+ **Context** — the situation or problem that prompted the decision.
200
+
201
+ **Decision** — the choice that was made and the reasoning behind it.
202
+
203
+ **Consequences** — what happens as a result, both positive and negative.
204
+
205
+ You can use any markdown content here including headings, tables, code blocks, and MDX components.
206
+
207
+ ## Next steps
208
+
209
+ - [Link decisions to resources](/docs/development/guides/resources/adrs/linking-resources)
210
+ - [Model relationships between decisions](/docs/development/guides/resources/adrs/relationships)
211
+ - [Architecture decision records reference](/docs/development/guides/resources/adrs/reference)
@@ -0,0 +1,52 @@
1
+ ---
2
+ sidebar_position: 3
3
+ keywords:
4
+ - EventCatalog ADR
5
+ - link ADR to resources
6
+ sidebar_label: Add ADRs to resources
7
+ title: Add ADRs to resources
8
+ description: Connect decisions to the services, events, and domains they affect.
9
+ ---
10
+
11
+ import AddedIn from '@site/src/components/MDX/AddedIn';
12
+
13
+ Use `appliesTo` to connect an ADR to the catalog resources it affects. When resources are linked, the ADR appears in the **Decision Records** section of each resource's sidebar.
14
+
15
+ ![Decision Records section on a resource sidebar listing linked ADRs](./img/linked-adr-document.png)
16
+
17
+ ## Use `appliesTo`
18
+
19
+ Add an `appliesTo` array to the frontmatter, specifying the `type` and `id` of each affected resource.
20
+
21
+ ```yaml title="adrs/choose-kafka/index.mdx"
22
+ appliesTo:
23
+ # ADR will apply to the Orders Domain
24
+ - type: domain
25
+ id: Orders
26
+ # ADR will apply to the PaymentService
27
+ - type: service
28
+ id: PaymentService
29
+ # ADR will apply to the PaymentAccepted event
30
+ - type: event
31
+ id: PaymentAccepted
32
+ ```
33
+
34
+ ## Pin to a specific version
35
+
36
+ By default, EventCatalog resolves the link to the latest version of the resource. Add a `version` field to pin to a specific version.
37
+
38
+ ```yaml
39
+ appliesTo:
40
+ - type: service
41
+ id: PaymentService
42
+ version: 1.0.0
43
+ - type: event
44
+ id: OrderConfirmed
45
+ version: latest # explicit, same as omitting version
46
+ ```
47
+
48
+ ## How it appears in the UI
49
+
50
+ When a resource has one or more ADRs linked via `appliesTo`, a **Decision Records** group appears in that resource's sidebar. Each linked ADR shows its name and links directly to the decision page.
51
+
52
+ This means engineers reading a service or event page can immediately see which architectural choices affect it, without leaving the page.
@@ -0,0 +1,80 @@
1
+ ---
2
+ sidebar_position: 4
3
+ keywords:
4
+ - EventCatalog ADR
5
+ - supersedes
6
+ - amends
7
+ sidebar_label: Model ADR relationships
8
+ title: Model ADR relationships
9
+ description: Model how decisions supersede, amend, or relate to each other.
10
+ ---
11
+
12
+ import AddedIn from '@site/src/components/MDX/AddedIn';
13
+
14
+ <AddedIn version="3.42.0" />
15
+
16
+ ADRs often build on or replace earlier decisions. EventCatalog supports four relationship types to capture this history.
17
+
18
+ ## Supersedes and supersededBy
19
+
20
+ Use `supersedes` when a new decision replaces an older one. The older decision should set its `status` to `superseded`.
21
+
22
+ ```yaml title="adrs/adr-003-v2/index.mdx (new decision)"
23
+ ---
24
+ id: adr-003-standardize-domain-event-buses
25
+ version: 2.0.0
26
+ status: accepted
27
+ supersedes:
28
+ - id: adr-003-standardize-domain-event-buses
29
+ version: 1.0.0
30
+ ---
31
+ ```
32
+
33
+ You can also declare the relationship from the older side using `supersededBy`.
34
+
35
+ ```yaml title="adrs/adr-003-v1/index.mdx (old decision)"
36
+ ---
37
+ id: adr-003-standardize-domain-event-buses
38
+ version: 1.0.0
39
+ status: superseded
40
+ supersededBy:
41
+ - id: adr-003-standardize-domain-event-buses
42
+ version: 2.0.0
43
+ ---
44
+ ```
45
+
46
+ EventCatalog derives reverse links automatically. Declaring `supersedes` on the new decision is enough to infer the `supersededBy` relationship on the old one, and vice versa.
47
+
48
+ ## Amends and amendedBy
49
+
50
+ Use `amends` when a decision refines or extends an earlier one without fully replacing it.
51
+
52
+ ```yaml
53
+ amends:
54
+ - id: adr-001-choose-event-driven-orders
55
+ ```
56
+
57
+ As with supersedes, reverse links are derived automatically from either side.
58
+
59
+ ## Related
60
+
61
+ Use `related` to point to decisions that are relevant context but not in a supersedes or amends relationship.
62
+
63
+ ```yaml
64
+ related:
65
+ - id: adr-001-choose-event-driven-orders
66
+ - id: adr-003-standardize-domain-event-buses
67
+ version: 2.0.0
68
+ ```
69
+
70
+ ## How relationships appear in the sidebar
71
+
72
+ Each relationship group appears as a separate section in the ADR's sidebar:
73
+
74
+ - **Supersedes** — decisions this ADR replaces
75
+ - **Superseded by** — decisions that replace this ADR
76
+ - **Amends** — decisions this ADR refines
77
+ - **Amended by** — decisions that refine this ADR
78
+ - **Related decisions** — associated decisions
79
+
80
+ Deprecated and superseded ADRs also display a warning banner at the top of the page with links to the current decision.