@eventcatalog/core 5.0.0-beta.9 → 5.0.0

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 (460) hide show
  1. package/LICENSE +13 -12
  2. package/README.md +5 -5
  3. package/dist/analytics/analytics.cjs +1 -1
  4. package/dist/analytics/analytics.js +2 -2
  5. package/dist/analytics/log-build.cjs +91 -44
  6. package/dist/analytics/log-build.d.cts +2 -2
  7. package/dist/analytics/log-build.d.ts +2 -2
  8. package/dist/analytics/log-build.js +6 -5
  9. package/dist/analytics/studio-usage.cjs +90 -0
  10. package/dist/analytics/studio-usage.d.cts +5 -0
  11. package/dist/analytics/studio-usage.d.ts +5 -0
  12. package/dist/analytics/studio-usage.js +10 -0
  13. package/dist/catalog-runtime.cjs +1 -1
  14. package/dist/{chunk-RFIXKATC.js → chunk-4G7FSRPN.js} +35 -42
  15. package/dist/{chunk-AWOO63ME.js → chunk-AD7CL772.js} +11 -4
  16. package/dist/chunk-CA6WCQ2T.js +54 -0
  17. package/dist/{chunk-GAHKCOQM.js → chunk-JZN4RSMF.js} +1 -1
  18. package/dist/{chunk-JQMYHZWI.js → chunk-NEAVAFSJ.js} +16 -8
  19. package/dist/{chunk-4CFZUHGG.js → chunk-NIVST4WY.js} +1 -1
  20. package/dist/{chunk-ENAG6UH7.js → chunk-NKNOXQ62.js} +1 -6
  21. package/dist/{chunk-ZEY2XUJN.js → chunk-OX6TSVHY.js} +6 -6
  22. package/dist/{chunk-36RYTYT5.js → chunk-PD7KTSYN.js} +1 -1
  23. package/dist/{chunk-EUNQJO3J.js → chunk-RE7UTPWH.js} +1 -1
  24. package/dist/chunk-S5GWAUG5.js +29 -0
  25. package/dist/{chunk-TZVDMWQX.js → chunk-YQGRMDRB.js} +4 -2
  26. package/dist/constants.cjs +1 -1
  27. package/dist/constants.js +1 -1
  28. package/dist/docs/api/02-config.md +57 -7
  29. package/dist/docs/development/00-why-eventcatalog.md +11 -11
  30. package/dist/docs/development/01-fundamentals.md +20 -13
  31. package/dist/docs/development/01-getting-started/configuration-overview.md +2 -2
  32. package/dist/docs/development/01-getting-started/installation.md +9 -1
  33. package/dist/docs/development/_getting-started.mdx +1 -1
  34. package/dist/docs/development/ask-your-architecture/01-intro.md +5 -5
  35. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +0 -4
  36. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +15 -3
  37. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +0 -3
  38. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +1 -1
  39. package/dist/docs/development/ask-your-architecture/02-llms.txt.md +1 -1
  40. package/dist/docs/development/ask-your-architecture/{05-skills/01-introduction.md → 03-install-skills.md} +57 -7
  41. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +1 -1
  42. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +86 -33
  43. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +14 -4
  44. package/dist/docs/development/ask-your-architecture/03-schemas.txt.md +1 -1
  45. package/dist/docs/development/ask-your-architecture/04-agents/_category_.json +1 -1
  46. package/dist/docs/development/authentication/01-introduction.md +2 -23
  47. package/dist/docs/development/authentication/02-enabling-authentication.md +0 -20
  48. package/dist/docs/development/authentication/07-rbac-middleware.md +0 -2
  49. package/dist/docs/development/authentication/providers/03-setting-up-github.md +0 -2
  50. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +0 -2
  51. package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +0 -2
  52. package/dist/docs/development/authentication/providers/05-setting-up-okta.md +0 -3
  53. package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +0 -2
  54. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +0 -4
  55. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +0 -3
  56. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +0 -17
  57. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +0 -4
  58. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +0 -2
  59. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +1 -3
  60. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +1 -4
  61. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +0 -2
  62. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +1 -3
  63. package/dist/docs/development/components/components/11-flow.md +17 -0
  64. package/dist/docs/development/components/components/15-nodegraph.md +43 -10
  65. package/dist/docs/development/components/components/18-remote-schema.md +1 -4
  66. package/dist/docs/development/components/custom-components/07-reference.md +14 -0
  67. package/dist/docs/development/customization/02-themes.md +0 -5
  68. package/dist/docs/development/customization/03-search.md +1 -1
  69. package/dist/docs/development/customization/05-custom-pages-and-api-routes/01-introduction.md +0 -2
  70. package/dist/docs/development/customization/05-custom-pages-and-api-routes/04-reference.md +7 -1
  71. package/dist/docs/development/customization/05-resource-sidebar.md +1 -1
  72. package/dist/docs/development/customization/09-embed-eventcatalog.md +20 -25
  73. package/dist/docs/development/deployment/hosting-options.md +7 -2
  74. package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/05-fix-common-problems.md +16 -0
  75. package/dist/docs/development/developer-tools/eventcatalog-linter/reference/03-rules.md +31 -1
  76. package/dist/docs/development/developer-tools/eventcatalog-linter/reference/05-supported-resources.md +1 -1
  77. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +0 -10
  78. package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +0 -4
  79. package/dist/docs/development/guides/97-architecture-graph.md +1 -1
  80. package/dist/docs/development/guides/99-adding-analytics.md +0 -7
  81. package/dist/docs/development/guides/domains/03-model-subdomains.md +2 -2
  82. package/dist/docs/development/guides/domains/04-add-resources-to-domains/01-add-systems-to-domains.md +3 -1
  83. package/dist/docs/development/guides/domains/04-add-resources-to-domains/02-add-services-to-domains.md +5 -1
  84. package/dist/docs/development/guides/domains/04-add-resources-to-domains/03-add-messages-to-domains.md +2 -2
  85. package/dist/docs/development/guides/domains/04-add-resources-to-domains/05-add-entities-to-domains.md +1 -1
  86. package/dist/docs/development/guides/domains/04-add-resources-to-domains/06-domain-resources-page.md +40 -0
  87. package/dist/docs/development/guides/domains/06-visualize-domains/01-domain-diagram.md +89 -0
  88. package/dist/docs/development/guides/domains/06-visualize-domains/_category_.json +1 -2
  89. package/dist/docs/development/guides/domains/09-reference.md +4 -4
  90. package/dist/docs/development/guides/owners/automated-teams-and-users/create-your-own-connector.md +0 -2
  91. package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-github.md +0 -3
  92. package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-microsoft-entra.md +0 -2
  93. package/dist/docs/development/guides/resources/adrs/03-linking-resources.md +8 -0
  94. package/dist/docs/development/guides/resources/adrs/06-reference.md +4 -4
  95. package/dist/docs/development/guides/resources/agents/11-reference.md +1 -1
  96. package/dist/docs/development/guides/resources/data/04-reference.md +1 -1
  97. package/dist/docs/development/guides/resources/data-products/07-reference.md +1 -1
  98. package/dist/docs/development/guides/resources/entities/05-entity-maps.md +1 -1
  99. package/dist/docs/development/guides/resources/entities/06-reference.md +2 -2
  100. package/dist/docs/development/guides/resources/flows/01-introduction.md +11 -1
  101. package/dist/docs/development/guides/resources/flows/03-model-flow-steps.md +65 -6
  102. package/dist/docs/development/guides/resources/flows/05-explore-flows.md +112 -0
  103. package/dist/docs/development/guides/resources/flows/06-reference.md +25 -4
  104. package/dist/docs/development/guides/resources/messages/01-what-are-messages.md +19 -0
  105. package/dist/docs/development/guides/resources/messages/04-message-channels/01-introduction.md +16 -0
  106. package/dist/docs/development/guides/resources/messages/04-message-channels/05-reference.md +2 -1
  107. package/dist/docs/development/guides/resources/messages/10-reference.md +6 -3
  108. package/dist/docs/development/guides/resources/schemas/04-explore-schemas/01-schema-explorer.md +2 -2
  109. package/dist/docs/development/guides/resources/schemas/04-explore-schemas/02-fields-explorer.md +0 -9
  110. package/dist/docs/development/guides/resources/schemas/05-schema-api.md +0 -3
  111. package/dist/docs/development/guides/resources/schemas/06-schema-mcp.md +11 -3
  112. package/dist/docs/development/guides/resources/services/04-add-resources-to-services/03-add-entities-to-services.md +1 -1
  113. package/dist/docs/development/guides/resources/services/05-resources-page.md +50 -0
  114. package/dist/docs/development/guides/resources/services/08-reference.md +2 -1
  115. package/dist/docs/development/guides/systems/01-introduction.md +1 -1
  116. package/dist/docs/development/guides/systems/02-create-system.md +2 -2
  117. package/dist/docs/development/guides/systems/03-add-resources-to-systems.md +35 -9
  118. package/dist/docs/development/guides/systems/04-model-relationships-and-actors.md +5 -3
  119. package/dist/docs/development/guides/systems/05-system-context-maps.md +39 -22
  120. package/dist/docs/development/guides/systems/06-reference.md +4 -4
  121. package/dist/docs/development/license/01-license-file.md +151 -0
  122. package/dist/docs/development/license/_category_.json +12 -0
  123. package/dist/docs/development/license-keys/_category_.json +3 -3
  124. package/dist/docs/development/license-keys/integrations.md +7 -37
  125. package/dist/docs/development/license-keys/license-validation.md +4 -0
  126. package/dist/docs/development/license-keys/overview.md +5 -1
  127. package/dist/docs/development/license-keys/plans.md +4 -2
  128. package/dist/docs/development/studio/01-introduction.md +60 -0
  129. package/dist/docs/development/studio/02-create-a-canvas.md +103 -0
  130. package/dist/docs/development/studio/03-set-up-persistent-storage.md +59 -0
  131. package/dist/docs/development/studio/04-collaborate-on-a-canvas.md +78 -0
  132. package/dist/docs/development/studio/05-connect-your-agent.md +102 -0
  133. package/dist/docs/development/studio/06-run-studio-in-production.md +54 -0
  134. package/dist/docs/development/studio/07-reference.md +294 -0
  135. package/dist/docs/development/studio/_category_.json +12 -0
  136. package/dist/docs/development/upgrading/v5.md +345 -0
  137. package/dist/docs/federation/00-overview.md +2 -8
  138. package/dist/docs/federation/01-first-federation.md +6 -18
  139. package/dist/docs/federation/explanation/how-it-works.md +0 -4
  140. package/dist/docs/federation/explanation/lockfile-and-cache.md +0 -4
  141. package/dist/docs/federation/explanation/mvp-status-and-feedback.md +0 -4
  142. package/dist/docs/federation/explanation/ownership-and-references.md +0 -4
  143. package/dist/docs/federation/how-to/configure-github-sources.md +6 -5
  144. package/dist/docs/federation/how-to/configure-validation-rules.md +0 -4
  145. package/dist/docs/federation/how-to/run-in-ci.md +2 -9
  146. package/dist/docs/federation/how-to/share-assets-and-components.md +0 -4
  147. package/dist/docs/federation/how-to/use-local-sources.md +0 -4
  148. package/dist/docs/federation/legacy-federation/00-introduction.md +4 -22
  149. package/dist/docs/federation/legacy-federation/01-installation.md +7 -58
  150. package/dist/docs/federation/legacy-federation/02-plugin-configuration.md +3 -21
  151. package/dist/docs/federation/legacy-federation/03-examples.md +3 -5
  152. package/dist/docs/federation/legacy-federation/04-configuration.md +3 -8
  153. package/dist/docs/federation/legacy-federation/05-setup-team-catalog.md +3 -6
  154. package/dist/docs/federation/reference/cli.md +2 -8
  155. package/dist/docs/federation/reference/configuration.md +0 -4
  156. package/dist/docs/federation/reference/diagnostic-rules.md +0 -5
  157. package/dist/docs/federation/reference/generated-output.md +0 -4
  158. package/dist/docs/federation/reference/supported-content.md +0 -4
  159. package/dist/docs/federation/reference/troubleshooting.md +0 -14
  160. package/dist/docs/plugins/02-generators.md +1 -1
  161. package/dist/docs/plugins/amazon-apigateway/00-intro.md +3 -28
  162. package/dist/docs/plugins/amazon-apigateway/01-installation.md +4 -56
  163. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +1 -6
  164. package/dist/docs/plugins/apicurio/00-intro.md +2 -31
  165. package/dist/docs/plugins/apicurio/01-installation.md +2 -26
  166. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +5 -13
  167. package/dist/docs/plugins/apicurio/03-features.md +1 -3
  168. package/dist/docs/plugins/asyncapi/00-intro.md +2 -28
  169. package/dist/docs/plugins/asyncapi/01-installation.md +3 -54
  170. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +2 -1
  171. package/dist/docs/plugins/aws-glue-registry/00-intro.md +4 -32
  172. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +3 -53
  173. package/dist/docs/plugins/azure-schema-registry/00-intro.md +4 -32
  174. package/dist/docs/plugins/azure-schema-registry/01-installation.md +6 -33
  175. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +1 -14
  176. package/dist/docs/plugins/azure-schema-registry/04-examples.md +0 -2
  177. package/dist/docs/plugins/backstage/00-overview.md +1 -7
  178. package/dist/docs/plugins/backstage/01-get-started.md +6 -15
  179. package/dist/docs/plugins/backstage/06-configuration.md +2 -8
  180. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +2 -29
  181. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +2 -26
  182. package/dist/docs/plugins/eventbridge/00-intro.md +0 -4
  183. package/dist/docs/plugins/eventbridge/00a-installation.md +1 -87
  184. package/dist/docs/plugins/eventbridge/03-api.md +2 -20
  185. package/dist/docs/plugins/github/00-intro.md +0 -31
  186. package/dist/docs/plugins/github/01-installation.md +2 -34
  187. package/dist/docs/plugins/graphql/00-intro.md +0 -30
  188. package/dist/docs/plugins/graphql/01-installation.md +1 -53
  189. package/dist/docs/plugins/graphql/02-plugin-configuration.md +0 -1
  190. package/dist/docs/plugins/hookdeck/01-intro.md +1 -1
  191. package/dist/docs/plugins/openapi/00-intro.md +0 -30
  192. package/dist/docs/plugins/openapi/01-installation.md +1 -57
  193. package/dist/docs/plugins/openapi/02-plugin-configuration.md +0 -5
  194. package/dist/docs/plugins/openapi/03-features.md +0 -4
  195. package/dist/eventcatalog-config-file-utils.cjs +34 -41
  196. package/dist/eventcatalog-config-file-utils.d.cts +56 -58
  197. package/dist/eventcatalog-config-file-utils.d.ts +56 -58
  198. package/dist/eventcatalog-config-file-utils.js +1 -1
  199. package/dist/eventcatalog.cjs +340 -249
  200. package/dist/eventcatalog.config.d.cts +18 -15
  201. package/dist/eventcatalog.config.d.ts +18 -15
  202. package/dist/eventcatalog.js +51 -33
  203. package/dist/features.cjs +36 -49
  204. package/dist/features.d.cts +1 -3
  205. package/dist/features.d.ts +1 -3
  206. package/dist/features.js +4 -6
  207. package/dist/federation/federate.cjs +37 -44
  208. package/dist/federation/federate.js +5 -5
  209. package/dist/federation/source-provider.js +2 -2
  210. package/dist/generate.cjs +37 -42
  211. package/dist/generate.js +4 -4
  212. package/dist/resolve-catalog-dependencies.cjs +34 -41
  213. package/dist/resolve-catalog-dependencies.js +2 -2
  214. package/dist/runtime-dependencies/@eventcatalog__visualiser__studio-fonts.css.mjs +3 -0
  215. package/dist/runtime-dependencies/@eventcatalog__visualiser__studio.css.mjs +3 -0
  216. package/dist/runtime-dependencies/@eventcatalog__visualiser__studio.mjs +3 -0
  217. package/dist/runtime-dependencies/htmlparser2.mjs +3 -0
  218. package/dist/runtime-dependencies/manifest.json +5 -1
  219. package/dist/runtime-dependencies/react-syntax-highlighter__dist__cjs__create-element.js.mjs +3 -0
  220. package/dist/utils/child-process-signals.cjs +53 -0
  221. package/dist/utils/child-process-signals.d.cts +19 -0
  222. package/dist/utils/child-process-signals.d.ts +19 -0
  223. package/dist/utils/child-process-signals.js +6 -0
  224. package/dist/utils/cli-logger.cjs +1 -1
  225. package/dist/utils/cli-logger.js +2 -2
  226. package/dist/utils/license-status.cjs +11 -4
  227. package/dist/utils/license-status.d.cts +3 -2
  228. package/dist/utils/license-status.d.ts +3 -2
  229. package/dist/utils/license-status.js +1 -1
  230. package/eventcatalog/astro.config.mjs +21 -1
  231. package/eventcatalog/integrations/config-loader.mjs +56 -58
  232. package/eventcatalog/integrations/skip-startup-reload.mjs +31 -0
  233. package/eventcatalog/integrations/stable-dependency-order.mjs +29 -0
  234. package/eventcatalog/integrations/storage.mjs +20 -0
  235. package/eventcatalog/integrations/studio-server.mjs +4 -1
  236. package/eventcatalog/src/components/CatalogGraph/CatalogForceGraph.tsx +39 -0
  237. package/eventcatalog/src/components/ChatPanel/ChatPanel.tsx +2 -0
  238. package/eventcatalog/src/components/Homepage/CatalogDashboard.astro +342 -0
  239. package/eventcatalog/src/components/MDX/NodeGraph/AstroNodeGraph.tsx +60 -4
  240. package/eventcatalog/src/components/MDX/NodeGraph/NodeGraph.astro +5 -1
  241. package/eventcatalog/src/components/NavigationProgress.astro +7 -0
  242. package/eventcatalog/src/components/SchemaExplorer/ApiContentViewer.tsx +2 -0
  243. package/eventcatalog/src/components/SchemaExplorer/ExamplesViewer.tsx +2 -0
  244. package/eventcatalog/src/components/SchemaExplorer/SchemaCodeModal.tsx +2 -0
  245. package/eventcatalog/src/components/SchemaExplorer/SchemaContentViewer.tsx +2 -0
  246. package/eventcatalog/src/components/Search/SearchDataLoader.astro +16 -28
  247. package/eventcatalog/src/components/Search/SearchModal.tsx +2 -10
  248. package/eventcatalog/src/components/Search/search-utils.ts +26 -0
  249. package/eventcatalog/src/components/Seo.astro +5 -1
  250. package/eventcatalog/src/components/Settings/AssistantSettingsForm.tsx +53 -48
  251. package/eventcatalog/src/components/Settings/GeneralSettingsForm.tsx +183 -178
  252. package/eventcatalog/src/components/Settings/LicenseSettings.tsx +140 -31
  253. package/eventcatalog/src/components/Settings/LlmAccessSettingsForm.tsx +40 -35
  254. package/eventcatalog/src/components/Settings/LogoUpload.tsx +1 -1
  255. package/eventcatalog/src/components/Settings/McpSettingsForm.tsx +9 -8
  256. package/eventcatalog/src/components/Settings/Row.tsx +7 -4
  257. package/eventcatalog/src/components/Settings/SettingsShared.tsx +3 -3
  258. package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +37 -76
  259. package/eventcatalog/src/components/SideNav/NestedSideBar/storage.ts +2 -0
  260. package/eventcatalog/src/components/SideNav/NestedSideBar/utils.ts +122 -1
  261. package/eventcatalog/src/components/SideNav/SideNav.astro +9 -1
  262. package/eventcatalog/src/components/TrialBadge.astro +20 -9
  263. package/eventcatalog/src/content.config.ts +19 -2
  264. package/eventcatalog/src/features/auth/error.astro +4 -2
  265. package/eventcatalog/src/features/auth/login.astro +2 -1
  266. package/eventcatalog/src/features/auth/middleware/middleware-auth.ts +21 -1
  267. package/eventcatalog/src/features/auth/unauthorized.astro +1 -1
  268. package/eventcatalog/src/features/fields/pages/fields.astro +1 -1
  269. package/eventcatalog/src/features/integrations/eventcatalog-features.ts +13 -7
  270. package/eventcatalog/src/features/mcp/apps/architecture-diagram/node-chat.tsx +6 -45
  271. package/eventcatalog/src/features/mcp/apps/canvas/shared.ts +3 -3
  272. package/eventcatalog/src/features/mcp/apps/canvas/styles.css +3 -1
  273. package/eventcatalog/src/features/mcp/apps/canvas/view.tsx +7 -5
  274. package/eventcatalog/src/features/mcp/apps/generated/canvas.html +123 -98
  275. package/eventcatalog/src/features/mcp/apps/generated/viewer.html +118 -101
  276. package/eventcatalog/src/features/mcp/mcp-server.ts +20 -4
  277. package/eventcatalog/src/features/server/start.ts +25 -0
  278. package/eventcatalog/src/features/storage/database.ts +88 -0
  279. package/eventcatalog/src/features/storage/migrations.ts +85 -0
  280. package/eventcatalog/src/features/storage/sql/database.sql +5 -0
  281. package/eventcatalog/src/features/storage/sql/migrations/0001-studio-canvases.sql +12 -0
  282. package/eventcatalog/src/features/storage/sql/migrations.sql +15 -0
  283. package/eventcatalog/src/features/storage/sql.ts +28 -0
  284. package/eventcatalog/src/features/studio/agent-choreography.ts +13 -10
  285. package/eventcatalog/src/features/studio/agents.ts +28 -0
  286. package/eventcatalog/src/features/studio/api/canvases-api.ts +219 -0
  287. package/eventcatalog/src/features/studio/api/canvases.ts +25 -0
  288. package/eventcatalog/src/features/studio/api/client.ts +40 -0
  289. package/eventcatalog/src/features/studio/canvas-actions.ts +160 -34
  290. package/eventcatalog/src/features/studio/canvas-preview.ts +1 -2
  291. package/eventcatalog/src/features/studio/catalog.ts +16 -14
  292. package/eventcatalog/src/features/studio/components/CanvasHeader.tsx +274 -105
  293. package/eventcatalog/src/features/studio/components/CanvasStatusMenu.tsx +15 -14
  294. package/eventcatalog/src/features/studio/components/ConnectAgentDialog.tsx +272 -119
  295. package/eventcatalog/src/features/studio/components/ConnectionsChooser.tsx +1 -2
  296. package/eventcatalog/src/features/studio/components/DeleteCanvasDialog.tsx +65 -0
  297. package/eventcatalog/src/features/studio/components/Dialog.tsx +60 -0
  298. package/eventcatalog/src/features/studio/components/JoinForm.tsx +101 -26
  299. package/eventcatalog/src/features/studio/components/LeftPanel.tsx +122 -230
  300. package/eventcatalog/src/features/studio/components/NodeDetails.tsx +183 -0
  301. package/eventcatalog/src/features/studio/components/OpenInStudioDialog.tsx +79 -0
  302. package/eventcatalog/src/features/studio/components/Presence.tsx +52 -45
  303. package/eventcatalog/src/features/studio/components/ShareDialog.tsx +277 -141
  304. package/eventcatalog/src/features/studio/components/ShortcutsDialog.tsx +41 -0
  305. package/eventcatalog/src/features/studio/components/StudioDesigner.tsx +1314 -385
  306. package/eventcatalog/src/features/studio/components/StudioNotice.astro +24 -0
  307. package/eventcatalog/src/features/studio/document-name.ts +7 -0
  308. package/eventcatalog/src/features/studio/from-visualiser.ts +138 -0
  309. package/eventcatalog/src/features/studio/hooks/presence-sender.ts +19 -2
  310. package/eventcatalog/src/features/studio/hooks/use-canvas-webmcp.ts +9 -3
  311. package/eventcatalog/src/features/studio/hooks/use-comments.ts +2 -2
  312. package/eventcatalog/src/features/studio/hooks/use-follow-camera.ts +8 -3
  313. package/eventcatalog/src/features/studio/hooks/use-studio-flow.ts +244 -32
  314. package/eventcatalog/src/features/studio/identity.ts +25 -1
  315. package/eventcatalog/src/features/studio/limits.ts +2 -0
  316. package/eventcatalog/src/features/studio/pages/[id].astro +42 -16
  317. package/eventcatalog/src/features/studio/pages/index.astro +596 -373
  318. package/eventcatalog/src/features/studio/pages/webmcp-relay.ts +12 -15
  319. package/eventcatalog/src/features/studio/server/canvas-mcp.ts +8 -23
  320. package/eventcatalog/src/features/studio/server/runtime.ts +150 -46
  321. package/eventcatalog/src/features/studio/server/sql/storage.sql +18 -0
  322. package/eventcatalog/src/features/studio/server/storage.ts +53 -73
  323. package/eventcatalog/src/features/studio/webmcp-relay/LICENSE +21 -0
  324. package/eventcatalog/src/features/studio/webmcp-relay/README.md +5 -0
  325. package/eventcatalog/src/features/studio/webmcp-relay/embed.js +2 -0
  326. package/eventcatalog/src/features/studio/webmcp-relay/widget.html +10 -0
  327. package/eventcatalog/src/features/studio/webmcp-relay/widget.js +1 -0
  328. package/eventcatalog/src/features/tools/catalog-tools.ts +3 -1
  329. package/eventcatalog/src/layouts/BaseLayout.astro +4 -4
  330. package/eventcatalog/src/layouts/SettingsLayout.astro +2 -2
  331. package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +3 -2
  332. package/eventcatalog/src/pages/_index.astro +5 -342
  333. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.spec.ts +2 -3
  334. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.ts +0 -7
  335. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/index.astro +3 -1
  336. package/eventcatalog/src/pages/diagrams/[id]/[version]/_index.data.ts +0 -7
  337. package/eventcatalog/src/pages/diagrams/[id]/[version]/embed.astro +1 -0
  338. package/eventcatalog/src/pages/diagrams/[id]/[version]/index.astro +1 -0
  339. package/eventcatalog/src/pages/directory/[type]/_index.data.ts +5 -7
  340. package/eventcatalog/src/pages/directory/[type]/index.astro +3 -1
  341. package/eventcatalog/src/pages/discover/[type]/_index.data.ts +5 -7
  342. package/eventcatalog/src/pages/discover/[type]/index.astro +3 -1
  343. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/_index.data.ts +0 -7
  344. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/index.astro +1 -0
  345. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/_index.data.ts +0 -7
  346. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/index.astro +1 -0
  347. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/_index.data.ts +0 -7
  348. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/asyncapi/[filename].astro +3 -1
  349. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/asyncapi/_[filename].data.ts +0 -7
  350. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_index.data.ts +0 -7
  351. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/index.astro +1 -0
  352. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/examples/[...filename].astro +1 -0
  353. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/examples/_[...filename].data.ts +0 -4
  354. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/field-lineage/_index.data.ts +0 -7
  355. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/field-lineage/index.astro +1 -0
  356. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/[filename].astro +3 -1
  357. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/_[filename].data.ts +0 -7
  358. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +1 -0
  359. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/_index.data.spec.ts +2 -3
  360. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/_index.data.ts +0 -7
  361. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/index.astro +1 -0
  362. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/spec/[filename].astro +1 -0
  363. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/spec/_[filename].data.ts +0 -7
  364. package/eventcatalog/src/pages/docs/[type]/[id]/_index.data.ts +0 -7
  365. package/eventcatalog/src/pages/docs/[type]/[id]/index.astro +2 -1
  366. package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/_index.data.ts +0 -7
  367. package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/index.astro +1 -0
  368. package/eventcatalog/src/pages/docs/[type]/[id]/language/_index.data.ts +0 -7
  369. package/eventcatalog/src/pages/docs/[type]/[id]/language/index.astro +1 -0
  370. package/eventcatalog/src/pages/docs/custom/[...path]/_index.data.ts +0 -7
  371. package/eventcatalog/src/pages/docs/custom/[...path]/index.astro +1 -0
  372. package/eventcatalog/src/pages/docs/services/[id]/[docType]/[docId]/index.astro +1 -1
  373. package/eventcatalog/src/pages/docs/services/[id]/[version]/resources/index.astro +1 -0
  374. package/eventcatalog/src/pages/docs/services/[id]/asyncapi/[filename].astro +1 -1
  375. package/eventcatalog/src/pages/docs/services/[id]/changelog/index.astro +1 -1
  376. package/eventcatalog/src/pages/docs/services/[id]/graphql/[filename].astro +1 -1
  377. package/eventcatalog/src/pages/docs/services/[id]/spec/[filename].astro +1 -1
  378. package/eventcatalog/src/pages/docs/teams/[id]/_index.data.ts +0 -7
  379. package/eventcatalog/src/pages/docs/teams/[id]/index.astro +1 -0
  380. package/eventcatalog/src/pages/docs/users/[id]/_index.data.ts +0 -7
  381. package/eventcatalog/src/pages/docs/users/[id]/index.astro +1 -0
  382. package/eventcatalog/src/pages/index.astro +4 -2
  383. package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/_index.data.ts +0 -7
  384. package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/index.astro +9 -1
  385. package/eventcatalog/src/pages/schemas/explorer/_index.data.ts +0 -7
  386. package/eventcatalog/src/pages/schemas/explorer/index.astro +4 -2
  387. package/eventcatalog/src/pages/settings/license.astro +9 -1
  388. package/eventcatalog/src/pages/triggers/[type]/[id]/[version]/_index.data.ts +0 -7
  389. package/eventcatalog/src/pages/triggers/[type]/[id]/[version]/index.astro +1 -0
  390. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/_index.data.ts +0 -7
  391. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/_index.data.ts +0 -7
  392. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/index.astro +1 -0
  393. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/_index.data.ts +0 -7
  394. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/index.astro +1 -0
  395. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/index.astro +1 -0
  396. package/eventcatalog/src/pages/visualiser/[type]/[id]/_index.data.ts +38 -0
  397. package/eventcatalog/src/pages/visualiser/[type]/[id]/index.astro +18 -41
  398. package/eventcatalog/src/pages/visualiser/designs/[id]/_index.data.ts +0 -7
  399. package/eventcatalog/src/pages/visualiser/designs/[id]/index.astro +2 -1
  400. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/_index.data.ts +0 -7
  401. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/index.astro +1 -0
  402. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/index.astro +1 -0
  403. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/_index.data.ts +0 -7
  404. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/index.astro +1 -0
  405. package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/_index.data.ts +0 -7
  406. package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/index.astro +1 -0
  407. package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/index.astro +1 -0
  408. package/eventcatalog/src/types/react-syntax-highlighter.d.ts +10 -0
  409. package/eventcatalog/src/utils/collections/flows.ts +20 -7
  410. package/eventcatalog/src/utils/collections/resource-owners.ts +8 -2
  411. package/eventcatalog/src/utils/collections/resources.ts +2 -0
  412. package/eventcatalog/src/utils/collections/util.ts +8 -4
  413. package/eventcatalog/src/utils/git.ts +11 -0
  414. package/eventcatalog/src/utils/homepage-dashboard.ts +143 -0
  415. package/eventcatalog/src/utils/license.ts +1 -1
  416. package/eventcatalog/src/utils/link-validation.ts +25 -19
  417. package/eventcatalog/src/utils/node-graphs/domain-entity-map.ts +3 -1
  418. package/eventcatalog/src/utils/node-graphs/domain-levels-node-graph.ts +3 -3
  419. package/eventcatalog/src/utils/node-graphs/field-node-graph.ts +4 -2
  420. package/eventcatalog/src/utils/node-graphs/layout-node-graph.ts +20 -1
  421. package/eventcatalog/src/utils/node-graphs/node-resource.ts +67 -0
  422. package/eventcatalog/src/utils/node-graphs/systems-node-graph.ts +1 -1
  423. package/eventcatalog/src/utils/page-loaders/hybrid-page.ts +4 -15
  424. package/eventcatalog/src/utils/page-title.ts +15 -0
  425. package/eventcatalog/src/utils/syntax-highlighter-renderer.ts +64 -0
  426. package/eventcatalog/src/utils/trial.ts +13 -0
  427. package/package.json +11 -11
  428. package/dist/docs/development/ask-your-architecture/05-skills/02-installation.md +0 -60
  429. package/dist/docs/development/ask-your-architecture/05-skills/_category_.json +0 -11
  430. package/dist/docs/development/ask-your-architecture/06-slack-integration/01-introduction.md +0 -63
  431. package/dist/docs/development/ask-your-architecture/06-slack-integration/02-slack-app-setup.md +0 -154
  432. package/dist/docs/development/ask-your-architecture/06-slack-integration/03-installation.md +0 -169
  433. package/dist/docs/development/ask-your-architecture/06-slack-integration/04-deployment.md +0 -236
  434. package/dist/docs/development/ask-your-architecture/06-slack-integration/05-usage.md +0 -140
  435. package/dist/docs/development/ask-your-architecture/06-slack-integration/06-troubleshooting.md +0 -268
  436. package/dist/docs/development/ask-your-architecture/06-slack-integration/_category_.json +0 -13
  437. package/dist/docs/development/guides/domains/06-visualize-domains/01-domain-integration-map.md +0 -40
  438. package/dist/runtime-dependencies/@mcp-b__webmcp-local-relay.mjs +0 -3
  439. package/eventcatalog/src/features/studio/canvas-doc.ts +0 -409
  440. package/eventcatalog/src/features/studio/clipboard.ts +0 -97
  441. package/eventcatalog/src/features/studio/components/CanvasControls.tsx +0 -154
  442. package/eventcatalog/src/features/studio/components/Comments.tsx +0 -770
  443. package/eventcatalog/src/features/studio/components/ContainerChooser.tsx +0 -145
  444. package/eventcatalog/src/features/studio/components/DragGhost.tsx +0 -115
  445. package/eventcatalog/src/features/studio/components/Picture.tsx +0 -21
  446. package/eventcatalog/src/features/studio/components/PropertiesPanel.tsx +0 -212
  447. package/eventcatalog/src/features/studio/components/canvas-nodes.tsx +0 -255
  448. package/eventcatalog/src/features/studio/components/icons.ts +0 -53
  449. package/eventcatalog/src/features/studio/components/status.ts +0 -51
  450. package/eventcatalog/src/features/studio/edges.ts +0 -56
  451. package/eventcatalog/src/features/studio/flow-state.ts +0 -92
  452. package/eventcatalog/src/features/studio/grouping.ts +0 -226
  453. package/eventcatalog/src/features/studio/layout.ts +0 -42
  454. package/eventcatalog/src/features/studio/levels.ts +0 -282
  455. package/eventcatalog/src/features/studio/node-types.ts +0 -205
  456. package/eventcatalog/src/features/studio/pages/new.astro +0 -24
  457. package/eventcatalog/src/features/studio/pages/wake.ts +0 -15
  458. package/eventcatalog/src/features/studio/placement.ts +0 -197
  459. package/eventcatalog/src/features/studio/studio.css +0 -273
  460. package/dist/{chunk-A2RZR3U4.js → chunk-6K7XZAYI.js} +3 -3
@@ -9,6 +9,7 @@ description: Understand events, commands, and queries in EventCatalog.
9
9
  ---
10
10
 
11
11
  import ProjectTree from '@site/src/components/MDX/ProjectTree';
12
+ import AddedIn from '@site/src/components/MDX/AddedIn';
12
13
 
13
14
  EventCatalog supports different types of messages ([commands](/docs/development/guides/resources/messages/message-types/commands), [events](/docs/development/guides/resources/messages/message-types/events) and [queries](/docs/development/guides/resources/messages/message-types/queries)).
14
15
 
@@ -22,6 +23,24 @@ EventCatalog supports different types of messages ([commands](/docs/development/
22
23
  - Messages can be sent (producer) or received (consumer) by [services](/docs/development/guides/resources/services/introduction), [domains](/docs/development/guides/domains/add-resources-to-domains/add-messages-to-domains) or be totally independent.
23
24
  - You can also route messages through one or more [channels](/docs/development/guides/resources/messages/message-channels/adding-messages-to-services) (e.g queue, broker, bus).
24
25
 
26
+ ### Resources page
27
+
28
+ <AddedIn version="5.0.0" />
29
+
30
+ Every event, command and query that is connected to something gets a **Resources** page. Open it from **Quick Reference** > **Resources** in the message's sidebar, or go to `/docs/{events|commands|queries}/{message-id}/{version}/resources`.
31
+
32
+ The page lists everything the message connects to, with a **Relationship** column that shows how each one is connected:
33
+
34
+ | Resource | Relationship |
35
+ |----------|--------------|
36
+ | Services, agents and data products that [produce or consume](/docs/development/guides/resources/messages/connect-messages/map-producers-and-consumers) the message | **Produces**, **Consumes** or **Produces & consumes** |
37
+ | [Channels](/docs/development/guides/resources/messages/message-channels/adding-messages-to-services) the message travels on | **Transports** |
38
+ | [Flows](/docs/development/guides/resources/flows/introduction) the message appears in | **Appears in** |
39
+ | Messages it [triggers or is triggered by](/docs/development/guides/resources/messages/connect-messages/map-commands-to-events) | **Triggers**, **Triggered by** or **Triggers & triggered by** |
40
+ | [Decision records](/docs/development/guides/resources/adrs/linking-resources) that apply to the message | **Governed by** |
41
+
42
+ Use the **Inbound** filter to see what produces the message (and what triggers it), and **Outbound** to see what consumes it (and what it triggers). You can also filter by resource type, search, sort and paginate the table. Each row has a **...** menu to view the resource's docs, view it in the visualiser, view its schema, or add it to your favorites. See the [service Resources page](/docs/development/guides/resources/services/resources-page) for more on these controls.
43
+
25
44
  ### Where do messages live?
26
45
 
27
46
  Messages can live anywhere in your catalog, at the service level or domain level.
@@ -47,6 +47,22 @@ You can model as many channels as you like, and you can route messages through m
47
47
 
48
48
  ![Example](../../../img/channels/channel-chains.png) -->
49
49
 
50
+ ### Resources page
51
+
52
+ <AddedIn version="5.0.0" />
53
+
54
+ Every channel that is connected to something gets a **Resources** page. Open it from **Quick Reference** > **Resources** in the channel's sidebar, or go to `/docs/channels/{channel-id}/{version}/resources`.
55
+
56
+ The page lists everything the channel connects to, with a **Relationship** column that shows how each one is connected:
57
+
58
+ | Resource | Relationship |
59
+ |----------|--------------|
60
+ | Services and agents that [send messages to the channel or receive messages from it](/docs/development/guides/resources/messages/message-channels/adding-messages-to-services) | **Produces messages**, **Receives messages** or **Produces & receives** |
61
+ | Events, commands and queries the channel transports | **Transports** |
62
+ | [Decision records](/docs/development/guides/resources/adrs/linking-resources) that apply to the channel | **Governed by** |
63
+
64
+ Use the **Inbound** filter to see what sends messages to the channel, and **Outbound** to see what receives messages from it. You can also filter by resource type, search, sort and paginate the table, and use each row's **...** menu to open the resource. See the [service Resources page](/docs/development/guides/resources/services/resources-page) for more on these controls.
65
+
50
66
 
51
67
  ### Supported Channel Protocols
52
68
 
@@ -30,7 +30,8 @@ Versioned channels use:
30
30
  | Route | Description |
31
31
  |-------|-------------|
32
32
  | `/docs/channels/{channel-id}/{version}` | Channel documentation page. |
33
- | `/visualiser/channels/{channel-id}/{version}` | Channel resource diagram. |
33
+ | `/docs/channels/{channel-id}/{version}/resources` | Channel [Resources page](/docs/development/guides/resources/messages/message-channels/introduction#resources-page). |
34
+ | `/visualiser/channels/{channel-id}/{version}` | Channel diagram (**Diagram** in the sidebar). |
34
35
 
35
36
  ## Required fields
36
37
 
@@ -223,9 +223,12 @@ Versioned messages use:
223
223
  | `/docs/events/{event-id}/{version}` | Event documentation page. |
224
224
  | `/docs/commands/{command-id}/{version}` | Command documentation page. |
225
225
  | `/docs/queries/{query-id}/{version}` | Query documentation page. |
226
- | `/visualiser/events/{event-id}/{version}` | Event resource diagram. |
227
- | `/visualiser/commands/{command-id}/{version}` | Command resource diagram. |
228
- | `/visualiser/queries/{query-id}/{version}` | Query resource diagram. |
226
+ | `/docs/events/{event-id}/{version}/resources` | Event [Resources page](/docs/development/guides/resources/messages/what-are-messages#resources-page). |
227
+ | `/docs/commands/{command-id}/{version}/resources` | Command [Resources page](/docs/development/guides/resources/messages/what-are-messages#resources-page). |
228
+ | `/docs/queries/{query-id}/{version}/resources` | Query [Resources page](/docs/development/guides/resources/messages/what-are-messages#resources-page). |
229
+ | `/visualiser/events/{event-id}/{version}` | Event diagram (**Diagram** in the sidebar). |
230
+ | `/visualiser/commands/{command-id}/{version}` | Command diagram (**Diagram** in the sidebar). |
231
+ | `/visualiser/queries/{query-id}/{version}` | Query diagram (**Diagram** in the sidebar). |
229
232
 
230
233
  ## Required fields
231
234
 
@@ -59,7 +59,7 @@ Each schema is split into tabs. EventCatalog only shows a tab when there is some
59
59
  | **Flows** | The [flows](/docs/development/guides/resources/flows/introduction) the message is part of. |
60
60
  | **Versions** | Every version of the schema, with a side-by-side comparison. |
61
61
  | **Details** | Schema metadata: format, version, file, source, and owners. |
62
- | **API** | API access to the schema (EventCatalog Scale). |
62
+ | **API** | API access to the schema. |
63
63
 
64
64
  ##### Link to a tab
65
65
 
@@ -114,4 +114,4 @@ The **Details** tab shows the schema name, format, message type, version, file,
114
114
 
115
115
  ##### API Access
116
116
 
117
- For EventCatalog Scale users, you can get API (GET) access to your schemas for mocking or testing. See [Schema API](/docs/development/guides/resources/schemas/schema-api).
117
+ You can get API (GET) access to your schemas for mocking or testing. See [Schema API](/docs/development/guides/resources/schemas/schema-api).
@@ -11,7 +11,6 @@ description: Browse, search, and trace schema fields across all messages in your
11
11
  ---
12
12
 
13
13
  import AddedIn from '@site/src/components/MDX/AddedIn';
14
- import PlanBanner from '@site/src/components/MDX/PlanBanner';
15
14
 
16
15
  :::info SSR required
17
16
  The Fields Explorer requires EventCatalog to run in SSR (server-side rendering) mode. It is not available in static builds.
@@ -19,10 +18,8 @@ The Fields Explorer requires EventCatalog to run in SSR (server-side rendering)
19
18
 
20
19
  <iframe width="100%" height="415" src="https://www.youtube.com/embed/PQIBATgtuKs?si=TagMKL49ZD_G_HYE" 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>
21
20
 
22
-
23
21
  The Fields Explorer gives you a catalog-wide view of every schema field across all your events, commands, and queries (supporting AVRO, JSON, and Proto). Search and filter fields by name, format, or message type, then click any field to trace exactly which services produce and consume it.
24
22
 
25
-
26
23
  ![Field Explorer](../img/field-search.png)
27
24
 
28
25
  ## Get started
@@ -64,8 +61,6 @@ Each row in the table represents a single field in a specific message schema.
64
61
 
65
62
  ## Trace field lineage
66
63
 
67
- <PlanBanner plan="Scale" />
68
-
69
64
  Clicking any field row opens a full-screen **Field Traceability** panel. This panel shows a node graph with three layers:
70
65
 
71
66
  1. **Producer services** -- services that publish the message containing this field
@@ -76,12 +71,8 @@ The right-hand panel lists the same information in a collapsible format and lets
76
71
 
77
72
  ![Field Explorer](../img/field-search-graph.png)
78
73
 
79
- _[If you want to try this feature you can get a 30-day free trial of EventCatalog Scale](https://eventcatalog.cloud)_
80
-
81
74
  ## Detect type conflicts
82
75
 
83
- <PlanBanner plan="Scale" />
84
-
85
76
  When the same field path appears in multiple messages with different data types, the Fields Explorer surfaces a **type conflict**.
86
77
 
87
78
  ![Field Explorer](../img/type-conflicts-row.png)
@@ -8,9 +8,6 @@ description: Get API (GET) access to your schemas for mocking or testing
8
8
  ---
9
9
 
10
10
  import AddedIn from '@site/src/components/MDX/AddedIn';
11
- import PlanBanner from '@site/src/components/MDX/PlanBanner';
12
-
13
- <PlanBanner plan="Scale" />
14
11
 
15
12
  EventCatalog provides an API to get access to your schemas and specifications.
16
13
 
@@ -8,9 +8,6 @@ description: Get access to your schemas for your MCP clients (e.g Cursor, Windsu
8
8
  ---
9
9
 
10
10
  import AddedIn from '@site/src/components/MDX/AddedIn';
11
- import PlanBanner from '@site/src/components/MDX/PlanBanner';
12
-
13
- <PlanBanner plan="Scale" />
14
11
 
15
12
  The [EventCatalog MCP server](/docs/development/ask-your-architecture/mcp-server/introduction) allows you to get access to your documentation and context in your MCP clients (e.g Cursor, Windsurf, Claude Desktop etc).
16
13
 
@@ -19,3 +16,14 @@ Your documented schemas for your Events, Queries, Commands and Services can be a
19
16
  This allows you to ask questions about your schemas, get schema information for your services and messages, directly in your code editor or LLM.
20
17
 
21
18
  To get started, you can follow the guide to [get started with the EventCatalog MCP server](/docs/development/ask-your-architecture/mcp-server/getting-started).
19
+
20
+ ### Show schemas to users
21
+
22
+ <AddedIn version="5.0.0" />
23
+
24
+ The MCP server has two tools for schemas:
25
+
26
+ - `showResource` with `view: "schema"` shows a schema to the user. In MCP clients that support MCP Apps (for example Claude, ChatGPT and VS Code), the schema opens in the same viewer as the [Schema Explorer](/docs/development/guides/resources/schemas/explore-schemas/schema-explorer), with a **Schema** tab and a **Properties** tab for JSON Schema, Avro and Protobuf. Other clients get the schema code.
27
+ - `getSchemaForResource` returns the schemas and specifications (OpenAPI, AsyncAPI, GraphQL) of a resource for the agent to read, for example to generate code.
28
+
29
+ Ask things like "show me the schema for OrderCreated" and the agent calls `showResource`. See [interactive diagrams and schemas](/docs/development/ask-your-architecture/mcp-server/getting-started#interactive-diagrams-and-schemas) for the parameters.
@@ -34,7 +34,7 @@ Your service markdown...
34
34
 
35
35
  <AddedIn version="3.25.1" />
36
36
 
37
- When a service has entities assigned, EventCatalog generates a dedicated **Entity Map** page in the visualizer at `/visualiser/services/{id}/{version}/entity-map`. A link to this view appears automatically in the service sidebar under the visualizer section.
37
+ When a service has entities assigned, EventCatalog generates a dedicated **Entity Diagram** page in the visualizer at `/visualiser/services/{id}/{version}/entity-map`. An **Entity Diagram** link to this view appears automatically in the **Architecture** section of the service sidebar.
38
38
 
39
39
  The entity map shows each entity as a node and draws edges between entities that reference one another using the `references` field in their properties. This gives you a quick overview of how the domain model is structured inside a service.
40
40
 
@@ -0,0 +1,50 @@
1
+ ---
2
+ sidebar_position: 5
3
+ keywords:
4
+ - EventCatalog services
5
+ - Service resources
6
+ - Resources page
7
+ sidebar_label: Service resources page
8
+ title: Service resources page
9
+ description: See every message, entity, data store, flow, and decision record connected to a service.
10
+ ---
11
+
12
+ import AddedIn from '@site/src/components/MDX/AddedIn';
13
+
14
+ <AddedIn version="5.0.0" />
15
+
16
+ Every service gets a **Resources** page that lists everything connected to it in one table. Open it from **Quick Reference** > **Resources** in the service's sidebar, or go to `/docs/services/{service-id}/{version}/resources`.
17
+
18
+ ![Order Service Resources page with Inbound and Outbound filters, type filters, a Relationship column and pagination](./img/service-resources-page.png)
19
+
20
+ ## What the page lists
21
+
22
+ The page lists the resources your service is connected to:
23
+
24
+ | Resource | Where it comes from | Relationship |
25
+ |----------|---------------------|--------------|
26
+ | Events, commands and queries | The service's `sends` and `receives` ([add messages to services](/docs/development/guides/resources/services/add-resources-to-services/add-messages-to-services)) | **Sends**, **Receives** or **Sends & receives** |
27
+ | Entities | The service's `entities` ([add entities to services](/docs/development/guides/resources/services/add-resources-to-services/add-entities-to-services)) | **Owns** |
28
+ | Data stores | The service's `writesTo` and `readsFrom` ([add data stores to services](/docs/development/guides/resources/services/add-resources-to-services/add-data-stores-to-services)) | **Writes to**, **Reads from** or **Reads & writes** |
29
+ | Flows | The service's `flows`, and any flow with a step that points at the service ([flows](/docs/development/guides/resources/flows/introduction)) | **Appears in** |
30
+ | Decision records | Any ADR whose `appliesTo` includes the service ([add ADRs to resources](/docs/development/guides/resources/adrs/linking-resources)) | **Governed by** |
31
+
32
+ The **Resources** link only shows in the sidebar when the service has at least one resource to list.
33
+
34
+ ## Find resources in the table
35
+
36
+ - **Relationship column**: shows how each resource connects to the service, for example **Sends**, **Receives** or **Reads from**.
37
+ - **Inbound** and **Outbound** filters: show only what comes into the service (messages it receives, data stores it reads from) or what goes out of it (messages it sends, data stores it writes to). These filters only show when the service has connections in both directions.
38
+ - **Type filters**: show only one or more kinds of resource, such as **Events**, **Commands** or **Data Stores**. A filter only shows for types the service has.
39
+ - **Filter...**: search by name, id or summary.
40
+ - **Sorting**: click the **Name**, **Type**, **Relationship** or **Version** column header to sort.
41
+ - **Pagination**: page through long lists and choose how many rows to show with **Per page**.
42
+
43
+ ## Row actions
44
+
45
+ Each row has a **...** menu with quick actions:
46
+
47
+ - **View documentation**: open the resource's docs page.
48
+ - **View in visualiser**: open the resource in the visualiser (when the visualiser is enabled and the resource has a diagram).
49
+ - **View schema**: open the message's schema page (when the message has a schema).
50
+ - **Add to favorites**: pin the resource to your favorites. Choose **Remove from favorites** to unpin it.
@@ -39,7 +39,8 @@ Versioned services use:
39
39
  | Route | Description |
40
40
  |-------|-------------|
41
41
  | `/docs/services/{service-id}/{version}` | Service documentation page. |
42
- | `/visualiser/services/{service-id}/{version}` | Service resource diagram. |
42
+ | `/docs/services/{service-id}/{version}/resources` | Service [Resources page](/docs/development/guides/resources/services/resources-page). |
43
+ | `/visualiser/services/{service-id}/{version}` | Service diagram (**Diagram** in the sidebar). |
43
44
 
44
45
  ## Required fields
45
46
 
@@ -10,7 +10,7 @@ description: What are systems? Why are they useful in EventCatalog?
10
10
  import AddedIn from '@site/src/components/MDX/AddedIn';
11
11
  import ProjectTree from '@site/src/components/MDX/ProjectTree';
12
12
 
13
- <AddedIn version="4.0" />
13
+ <AddedIn version="4.0.0" />
14
14
 
15
15
  A system is a collection of resources that work together to perform a function.
16
16
 
@@ -11,7 +11,7 @@ import AddedIn from '@site/src/components/MDX/AddedIn';
11
11
  import PromptBox from '@site/src/components/MDX/PromptBox';
12
12
  import ProjectTree from '@site/src/components/MDX/ProjectTree';
13
13
 
14
- <AddedIn version="4.0" />
14
+ <AddedIn version="4.0.0" />
15
15
 
16
16
  A system is a collection of resources that work together to perform a function.
17
17
 
@@ -123,5 +123,5 @@ The Cart System owns the shopping cart. It accepts commands to add and remove it
123
123
  - [Add resources to the system](/docs/development/guides/systems/add-resources-to-systems)
124
124
  - [Model relationships and actors](/docs/development/guides/systems/model-relationships-and-actors)
125
125
  - [Add systems to domains](/docs/development/guides/domains/add-resources-to-domains/add-systems-to-domains)
126
- - [Visualize systems with context maps](/docs/development/guides/systems/system-context-maps)
126
+ - [Visualize systems with diagrams](/docs/development/guides/systems/system-context-maps)
127
127
  - [Review the systems reference](/docs/development/guides/systems/reference)
@@ -11,7 +11,7 @@ description: Add services, flows, entities, and data stores to systems.
11
11
  import AddedIn from '@site/src/components/MDX/AddedIn';
12
12
  import ProjectTree from '@site/src/components/MDX/ProjectTree';
13
13
 
14
- <AddedIn version="4.0" />
14
+ <AddedIn version="4.0.0" />
15
15
 
16
16
  In EventCatalog, systems can directly reference:
17
17
 
@@ -134,24 +134,50 @@ You can also define resources inside the system folder to keep related architect
134
134
 
135
135
  This structure makes the system the entry point for the resources that make up that capability.
136
136
 
137
- ## Show the resource diagram
138
-
139
- Add `<NodeGraph />` to the system page to show the resources inside the system.
140
-
137
+ ## Show the system's resources on its page
141
138
 
139
+ Add `<NodeGraph />` to the system page to show the services and data stores inside the system, and the messages between them.
142
140
 
143
141
  ```md title="/domains/Shopping/systems/cart-system/index.mdx"
144
- ## Resource Diagram
142
+ ## Architecture
145
143
 
146
144
  <NodeGraph />
147
145
  ```
148
146
 
149
- ![Product Catalog System resource diagram](./img/product-catalog-system-resource-map.png)
147
+ ![Product Catalog System showing its services, messages, and data stores](./img/product-catalog-system-resource-map.png)
150
148
 
151
- You can also open the resource diagram directly:
149
+ Each system also has a **Diagram** page, linked from the **Architecture** section of the system sidebar. Level 2 (**L2**) of the Diagram shows the services and data stores inside the system, and level 3 (**L3**) adds the messages and channels:
152
150
 
153
151
  ```txt
154
- /visualiser/systems/{system-id}/{version}
152
+ /visualiser/systems/{system-id}/{version}?level=2
155
153
  ```
156
154
 
155
+ Learn more in [System diagrams](/docs/development/guides/systems/system-context-maps).
156
+
157
+ ## Resources page
158
+
159
+ Every system with resources gets a **Resources** page that lists them in one table. Open it from **Quick Reference** > **Resources** in the system's sidebar, or go to:
160
+
161
+ ```txt
162
+ /docs/systems/{system-id}/{version}/resources
163
+ ```
164
+
165
+ The page lists the resources attached directly to the system:
166
+
167
+ | Resource | Where it comes from | Relationship |
168
+ |----------|---------------------|--------------|
169
+ | Services | The system's [`services`](/docs/development/guides/systems/reference#services) | **Contains** |
170
+ | Flows | The system's [`flows`](/docs/development/guides/systems/reference#flows) | **Contains** |
171
+ | Entities | The system's [`entities`](/docs/development/guides/systems/reference#entities) | **Owns** |
172
+ | Data stores | The system's [`containers`](/docs/development/guides/systems/reference#containers) | **Contains** |
173
+ | Decision records | Any ADR whose `appliesTo` includes the system ([add ADRs to resources](/docs/development/guides/resources/adrs/linking-resources)) | **Governed by** |
174
+
175
+ Messages are not listed on a system's Resources page. To see them, open the Resources page of a service in the system.
176
+
177
+ The table has the same filters, sorting and row actions as the service Resources page. See [Service resources page](/docs/development/guides/resources/services/resources-page).
178
+
179
+ :::info Changed in EventCatalog v5
180
+ The sidebar link was called **System Resources** and is now **Resources**. The page now lists decision records and has a **Relationship** column. The system architecture overview page (`/architecture/systems/{system-id}/{version}`) is removed. Old links redirect to the Resources page, or to the system's docs page when it has nothing to list.
181
+ :::
182
+
157
183
  For the complete list of supported fields, see the [systems reference](/docs/development/guides/systems/reference).
@@ -11,7 +11,7 @@ description: Model relationships between systems and the actors that interact wi
11
11
 
12
12
  import AddedIn from '@site/src/components/MDX/AddedIn';
13
13
 
14
- <AddedIn version="4.0" />
14
+ <AddedIn version="4.0.0" />
15
15
 
16
16
  Systems can describe how they relate to other systems and which people, roles, or external participants interact with them.
17
17
 
@@ -77,10 +77,12 @@ Add `<ContextDiagram />` to a system page to show the system in context with rel
77
77
  <ContextDiagram />
78
78
  ```
79
79
 
80
- You can also open the context diagram directly:
80
+ The context diagram is also level 1 (**L1**) of the system's **Diagram** page, linked from the **Architecture** section of the system sidebar:
81
81
 
82
82
  ```txt
83
- /visualiser/systems/{system-id}/{version}/context
83
+ /visualiser/systems/{system-id}/{version}?level=1
84
84
  ```
85
85
 
86
+ Learn more in [System diagrams](/docs/development/guides/systems/system-context-maps).
87
+
86
88
  For the complete relationship and actor fields, see the [systems reference](/docs/development/guides/systems/reference).
@@ -2,24 +2,25 @@
2
2
  sidebar_position: 5
3
3
  keywords:
4
4
  - EventCatalog systems
5
- - System context map
5
+ - System context diagram
6
+ - System diagram
6
7
  - Architecture visualizer
7
- sidebar_label: System context maps
8
- title: System context maps
9
- description: Visualize systems from high-level context maps down to detailed resource maps.
8
+ sidebar_label: System diagrams
9
+ title: System diagrams
10
+ description: Visualize systems from the System Context Diagram down to the services, messages, and data stores inside one system.
10
11
  ---
11
12
 
12
13
  import AddedIn from '@site/src/components/MDX/AddedIn';
13
14
 
14
- <AddedIn version="4.0" />
15
+ <AddedIn version="4.0.0" />
15
16
 
16
- System context maps help teams understand how systems fit together across an architecture.
17
+ System diagrams help teams understand how systems fit together across an architecture.
17
18
 
18
- They give users a high-level view of all systems, the actors that interact with them, and the relationships between systems. From there, users can drill into a specific system to see the resources that make it up, including APIs, services, messages, data stores, and flows.
19
+ They give users a high-level view of all systems, the actors that interact with them, and the relationships between systems. From there, users can drill into a specific system to see the resources that make it up, including services, messages, channels, and data stores.
19
20
 
20
- ## Start with the system context map
21
+ ## Start with the System Context Diagram
21
22
 
22
- The global system context map shows your systems and how they relate to each other.
23
+ The global System Context Diagram shows your systems and how they relate to each other.
23
24
 
24
25
  Use this view when you want to answer questions like:
25
26
 
@@ -28,9 +29,9 @@ Use this view when you want to answer questions like:
28
29
  - Which people or roles interact with these systems?
29
30
  - Where should I drill in for more detail?
30
31
 
31
- ![System context map showing systems, actors, and relationships](./img/system-context-map.png)
32
+ ![System Context Diagram showing systems, actors, and relationships](./img/system-context-map.png)
32
33
 
33
- You can open the global system context map at:
34
+ When your catalog has systems, a **System Context Diagram** link appears in the **Top level diagrams** section of the sidebar. You can also open it at:
34
35
 
35
36
  ```txt
36
37
  /visualiser/system-context-map
@@ -38,31 +39,47 @@ You can open the global system context map at:
38
39
 
39
40
  ## Drill into a system
40
41
 
41
- After users understand the high-level context, they can click into a system and view its resource diagram.
42
+ <AddedIn version="5.0.0" />
42
43
 
43
- The resource diagram shows the detailed architecture inside that system. For example, a payment processing system can show the APIs, workers, commands, events, and data stores that work together to process payments.
44
-
45
- ![System resource map showing APIs, messages, services, and data stores inside a system](./img/system-resource-map.png)
46
-
47
- You can open a system resource diagram at:
44
+ Every system has a **Diagram** page. Open it from **Diagram** in the **Architecture** section of the system sidebar, or at:
48
45
 
49
46
  ```txt
50
47
  /visualiser/systems/{system-id}/{version}
51
48
  ```
52
49
 
53
- For example:
50
+ The Diagram shows the system at three levels of detail. Switch levels with **L1**, **L2** and **L3** in the canvas toolbar at the bottom of the diagram.
51
+
52
+ | Level | What it shows |
53
+ |-------|---------------|
54
+ | **L1** | The system context: the system with the systems it has relationships with and its actors. The system you are viewing is marked **Viewing**. |
55
+ | **L2** | The context stays, and the system expands into its services and data stores and how they connect. Its relationships and actors connect to the expanded system. |
56
+ | **L3** | Adds the messages and channels. |
57
+
58
+ ![Payment Processing System diagram at level 1, showing the system and the external systems it has relationships with](./img/system-diagram-l1.png)
59
+
60
+ ![Payment Processing System diagram at level 2, with the system expanded into its services and data store](./img/system-diagram-l2.png)
61
+
62
+ The page opens at level 1. The level is kept in the URL, so a shared link opens at the same level. Use `?level=` to open a level directly:
54
63
 
55
64
  ```txt
56
- /visualiser/systems/search-system/1.0.0
65
+ /visualiser/systems/payment-processing-system/1.0.0?level=2
57
66
  ```
58
67
 
68
+ The canvas toolbar and menu also let you simulate messages, hide messages or channels, and hide resource types from the legend. See [NodeGraph interactive controls](/docs/development/components/components/nodegraph#interactive-controls).
69
+
70
+ :::info Changed in EventCatalog v5
71
+ The system's **Context Diagram** and **Resource Diagram** pages are replaced by the single **Diagram** page. The old Context Diagram route (`/visualiser/systems/{system-id}/{version}/context`) redirects to level 1.
72
+
73
+ Layouts saved in dev mode for a system's context diagram carry over to level 1. Layouts saved for a system's old Resource Diagram don't carry over to levels 2 and 3. Save the layout again if you need it.
74
+ :::
75
+
59
76
  ## High-level to detailed architecture
60
77
 
61
78
  The goal of systems is to let users move through your architecture at the right level of detail:
62
79
 
63
- - Start with a high-level context map to understand the systems and relationships.
64
- - Select a system to understand what it owns and depends on.
65
- - Drill into the resources inside that system to inspect APIs, messages, services, data stores, and flows.
80
+ - Start with the System Context Diagram to understand the systems and relationships.
81
+ - Select a system and open its Diagram at level 1 to see what it depends on.
82
+ - Switch to levels 2 and 3 to inspect the services, data stores, messages, and channels inside that system.
66
83
 
67
84
  This gives teams a path from architecture overview to implementation detail without forcing every user to start at the lowest level.
68
85
 
@@ -10,7 +10,7 @@ description: Frontmatter fields, paths, and routes for systems in EventCatalog.
10
10
 
11
11
  import AddedIn from '@site/src/components/MDX/AddedIn';
12
12
 
13
- <AddedIn version="4.0" />
13
+ <AddedIn version="4.0.0" />
14
14
 
15
15
  This page lists the fields, paths, and routes supported by systems.
16
16
 
@@ -40,9 +40,9 @@ Versioned systems use the same versioning pattern as other EventCatalog resource
40
40
  | Route | Description |
41
41
  |-------|-------------|
42
42
  | `/docs/systems/{system-id}/{version}` | System documentation page. |
43
- | `/visualiser/systems/{system-id}/{version}` | Resource diagram for one system. |
44
- | `/visualiser/systems/{system-id}/{version}/context` | Context diagram for one system. |
45
- | `/visualiser/system-context-map` | Global system context map. |
43
+ | `/docs/systems/{system-id}/{version}/resources` | [Resources page](/docs/development/guides/systems/add-resources-to-systems#resources-page) listing the resources attached to the system. |
44
+ | `/visualiser/systems/{system-id}/{version}` | [Diagram](/docs/development/guides/systems/system-context-maps) for one system, with levels L1 to L3. Add `?level=1`, `?level=2` or `?level=3` to open a level directly. |
45
+ | `/visualiser/system-context-map` | Global System Context Diagram. |
46
46
 
47
47
  ## Required fields
48
48