@eventcatalog/core 5.0.0-beta.8 → 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.
- package/LICENSE +234 -134
- package/README.md +5 -5
- package/dist/analytics/analytics.cjs +18 -3
- package/dist/analytics/analytics.d.cts +1 -1
- package/dist/analytics/analytics.d.ts +1 -1
- package/dist/analytics/analytics.js +3 -2
- package/dist/analytics/log-build.cjs +157 -76
- package/dist/analytics/log-build.d.cts +2 -2
- package/dist/analytics/log-build.d.ts +2 -2
- package/dist/analytics/log-build.js +7 -5
- package/dist/analytics/studio-usage.cjs +90 -0
- package/dist/analytics/studio-usage.d.cts +5 -0
- package/dist/analytics/studio-usage.d.ts +5 -0
- package/dist/analytics/studio-usage.js +10 -0
- package/dist/analytics/telemetry.cjs +42 -0
- package/dist/analytics/telemetry.d.cts +20 -0
- package/dist/analytics/telemetry.d.ts +20 -0
- package/dist/analytics/telemetry.js +8 -0
- package/dist/catalog-runtime.cjs +1 -1
- package/dist/{chunk-RFIXKATC.js → chunk-4G7FSRPN.js} +35 -42
- package/dist/{chunk-AWOO63ME.js → chunk-AD7CL772.js} +11 -4
- package/dist/chunk-CA6WCQ2T.js +54 -0
- package/dist/chunk-CPW6G62V.js +17 -0
- package/dist/{chunk-PU25TOOJ.js → chunk-JZN4RSMF.js} +1 -1
- package/dist/{chunk-4W55ZOOS.js → chunk-NEAVAFSJ.js} +66 -35
- package/dist/{chunk-C6T2AAFR.js → chunk-NIVST4WY.js} +9 -3
- package/dist/{chunk-ENAG6UH7.js → chunk-NKNOXQ62.js} +1 -6
- package/dist/{chunk-AYNZXUB5.js → chunk-OX6TSVHY.js} +5 -5
- package/dist/{chunk-36RYTYT5.js → chunk-PD7KTSYN.js} +1 -1
- package/dist/{chunk-RDIZJ7UT.js → chunk-RE7UTPWH.js} +1 -1
- package/dist/chunk-S5GWAUG5.js +29 -0
- package/dist/{chunk-T4G3VVZ4.js → chunk-YQGRMDRB.js} +4 -2
- package/dist/constants.cjs +1 -1
- package/dist/constants.js +1 -1
- package/dist/docs/api/02-config.md +57 -7
- package/dist/docs/development/00-why-eventcatalog.md +11 -11
- package/dist/docs/development/01-fundamentals.md +20 -13
- package/dist/docs/development/01-getting-started/configuration-overview.md +2 -2
- package/dist/docs/development/01-getting-started/installation.md +9 -1
- package/dist/docs/development/_getting-started.mdx +1 -1
- package/dist/docs/development/ask-your-architecture/01-intro.md +5 -5
- package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +0 -4
- package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +15 -3
- package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +0 -3
- package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +1 -1
- package/dist/docs/development/ask-your-architecture/02-llms.txt.md +1 -1
- package/dist/docs/development/ask-your-architecture/{05-skills/01-introduction.md → 03-install-skills.md} +57 -7
- package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +1 -1
- package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +86 -33
- package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +14 -4
- package/dist/docs/development/ask-your-architecture/03-schemas.txt.md +1 -1
- package/dist/docs/development/ask-your-architecture/04-agents/_category_.json +1 -1
- package/dist/docs/development/authentication/01-introduction.md +2 -23
- package/dist/docs/development/authentication/02-enabling-authentication.md +0 -20
- package/dist/docs/development/authentication/07-rbac-middleware.md +0 -2
- package/dist/docs/development/authentication/providers/03-setting-up-github.md +0 -2
- package/dist/docs/development/authentication/providers/03a-setting-up-google.md +0 -2
- package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +0 -2
- package/dist/docs/development/authentication/providers/05-setting-up-okta.md +0 -3
- package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +0 -2
- package/dist/docs/development/bring-your-own-documentation/01-introduction.md +0 -4
- package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +0 -3
- package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +0 -17
- package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +0 -4
- package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +0 -2
- package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +1 -3
- package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +1 -4
- package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +0 -2
- package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +1 -3
- package/dist/docs/development/components/components/11-flow.md +17 -0
- package/dist/docs/development/components/components/15-nodegraph.md +43 -10
- package/dist/docs/development/components/components/18-remote-schema.md +1 -4
- package/dist/docs/development/components/custom-components/07-reference.md +14 -0
- package/dist/docs/development/customization/02-themes.md +0 -5
- package/dist/docs/development/customization/03-search.md +1 -1
- package/dist/docs/development/customization/05-custom-pages-and-api-routes/01-introduction.md +0 -2
- package/dist/docs/development/customization/05-custom-pages-and-api-routes/04-reference.md +7 -1
- package/dist/docs/development/customization/05-resource-sidebar.md +1 -1
- package/dist/docs/development/customization/09-embed-eventcatalog.md +20 -25
- package/dist/docs/development/deployment/hosting-options.md +7 -2
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/05-fix-common-problems.md +16 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/03-rules.md +31 -1
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/05-supported-resources.md +1 -1
- package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +0 -10
- package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +0 -4
- package/dist/docs/development/guides/97-architecture-graph.md +1 -1
- package/dist/docs/development/guides/99-adding-analytics.md +0 -7
- package/dist/docs/development/guides/domains/03-model-subdomains.md +2 -2
- package/dist/docs/development/guides/domains/04-add-resources-to-domains/01-add-systems-to-domains.md +3 -1
- package/dist/docs/development/guides/domains/04-add-resources-to-domains/02-add-services-to-domains.md +5 -1
- package/dist/docs/development/guides/domains/04-add-resources-to-domains/03-add-messages-to-domains.md +2 -2
- package/dist/docs/development/guides/domains/04-add-resources-to-domains/05-add-entities-to-domains.md +1 -1
- package/dist/docs/development/guides/domains/04-add-resources-to-domains/06-domain-resources-page.md +40 -0
- package/dist/docs/development/guides/domains/06-visualize-domains/01-domain-diagram.md +89 -0
- package/dist/docs/development/guides/domains/06-visualize-domains/_category_.json +1 -2
- package/dist/docs/development/guides/domains/09-reference.md +4 -4
- package/dist/docs/development/guides/owners/automated-teams-and-users/create-your-own-connector.md +0 -2
- package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-github.md +0 -3
- package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-microsoft-entra.md +0 -2
- package/dist/docs/development/guides/resources/adrs/03-linking-resources.md +8 -0
- package/dist/docs/development/guides/resources/adrs/06-reference.md +4 -4
- package/dist/docs/development/guides/resources/agents/11-reference.md +1 -1
- package/dist/docs/development/guides/resources/data/04-reference.md +1 -1
- package/dist/docs/development/guides/resources/data-products/07-reference.md +1 -1
- package/dist/docs/development/guides/resources/entities/05-entity-maps.md +1 -1
- package/dist/docs/development/guides/resources/entities/06-reference.md +2 -2
- package/dist/docs/development/guides/resources/flows/01-introduction.md +11 -1
- package/dist/docs/development/guides/resources/flows/03-model-flow-steps.md +65 -6
- package/dist/docs/development/guides/resources/flows/05-explore-flows.md +112 -0
- package/dist/docs/development/guides/resources/flows/06-reference.md +25 -4
- package/dist/docs/development/guides/resources/messages/01-what-are-messages.md +19 -0
- package/dist/docs/development/guides/resources/messages/04-message-channels/01-introduction.md +16 -0
- package/dist/docs/development/guides/resources/messages/04-message-channels/05-reference.md +2 -1
- package/dist/docs/development/guides/resources/messages/10-reference.md +6 -3
- package/dist/docs/development/guides/resources/schemas/04-explore-schemas/01-schema-explorer.md +2 -2
- package/dist/docs/development/guides/resources/schemas/04-explore-schemas/02-fields-explorer.md +0 -9
- package/dist/docs/development/guides/resources/schemas/05-schema-api.md +0 -3
- package/dist/docs/development/guides/resources/schemas/06-schema-mcp.md +11 -3
- package/dist/docs/development/guides/resources/services/04-add-resources-to-services/03-add-entities-to-services.md +1 -1
- package/dist/docs/development/guides/resources/services/05-resources-page.md +50 -0
- package/dist/docs/development/guides/resources/services/08-reference.md +2 -1
- package/dist/docs/development/guides/systems/01-introduction.md +1 -1
- package/dist/docs/development/guides/systems/02-create-system.md +2 -2
- package/dist/docs/development/guides/systems/03-add-resources-to-systems.md +35 -9
- package/dist/docs/development/guides/systems/04-model-relationships-and-actors.md +5 -3
- package/dist/docs/development/guides/systems/05-system-context-maps.md +39 -22
- package/dist/docs/development/guides/systems/06-reference.md +4 -4
- package/dist/docs/development/license/01-license-file.md +151 -0
- package/dist/docs/development/license/_category_.json +12 -0
- package/dist/docs/development/license-keys/_category_.json +3 -3
- package/dist/docs/development/license-keys/integrations.md +7 -37
- package/dist/docs/development/license-keys/license-validation.md +4 -0
- package/dist/docs/development/license-keys/overview.md +5 -1
- package/dist/docs/development/license-keys/plans.md +4 -2
- package/dist/docs/development/studio/01-introduction.md +60 -0
- package/dist/docs/development/studio/02-create-a-canvas.md +103 -0
- package/dist/docs/development/studio/03-set-up-persistent-storage.md +59 -0
- package/dist/docs/development/studio/04-collaborate-on-a-canvas.md +78 -0
- package/dist/docs/development/studio/05-connect-your-agent.md +102 -0
- package/dist/docs/development/studio/06-run-studio-in-production.md +54 -0
- package/dist/docs/development/studio/07-reference.md +294 -0
- package/dist/docs/development/studio/_category_.json +12 -0
- package/dist/docs/development/upgrading/v5.md +345 -0
- package/dist/docs/federation/00-overview.md +2 -8
- package/dist/docs/federation/01-first-federation.md +6 -18
- package/dist/docs/federation/explanation/how-it-works.md +0 -4
- package/dist/docs/federation/explanation/lockfile-and-cache.md +0 -4
- package/dist/docs/federation/explanation/mvp-status-and-feedback.md +0 -4
- package/dist/docs/federation/explanation/ownership-and-references.md +0 -4
- package/dist/docs/federation/how-to/configure-github-sources.md +6 -5
- package/dist/docs/federation/how-to/configure-validation-rules.md +0 -4
- package/dist/docs/federation/how-to/run-in-ci.md +2 -9
- package/dist/docs/federation/how-to/share-assets-and-components.md +0 -4
- package/dist/docs/federation/how-to/use-local-sources.md +0 -4
- package/dist/docs/federation/legacy-federation/00-introduction.md +4 -22
- package/dist/docs/federation/legacy-federation/01-installation.md +7 -58
- package/dist/docs/federation/legacy-federation/02-plugin-configuration.md +3 -21
- package/dist/docs/federation/legacy-federation/03-examples.md +3 -5
- package/dist/docs/federation/legacy-federation/04-configuration.md +3 -8
- package/dist/docs/federation/legacy-federation/05-setup-team-catalog.md +3 -6
- package/dist/docs/federation/reference/cli.md +2 -8
- package/dist/docs/federation/reference/configuration.md +0 -4
- package/dist/docs/federation/reference/diagnostic-rules.md +0 -5
- package/dist/docs/federation/reference/generated-output.md +0 -4
- package/dist/docs/federation/reference/supported-content.md +0 -4
- package/dist/docs/federation/reference/troubleshooting.md +0 -14
- package/dist/docs/plugins/02-generators.md +1 -1
- package/dist/docs/plugins/amazon-apigateway/00-intro.md +3 -28
- package/dist/docs/plugins/amazon-apigateway/01-installation.md +4 -56
- package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +1 -6
- package/dist/docs/plugins/apicurio/00-intro.md +2 -31
- package/dist/docs/plugins/apicurio/01-installation.md +2 -26
- package/dist/docs/plugins/apicurio/02-plugin-configuration.md +5 -13
- package/dist/docs/plugins/apicurio/03-features.md +1 -3
- package/dist/docs/plugins/asyncapi/00-intro.md +2 -28
- package/dist/docs/plugins/asyncapi/01-installation.md +3 -54
- package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +2 -1
- package/dist/docs/plugins/aws-glue-registry/00-intro.md +4 -32
- package/dist/docs/plugins/aws-glue-registry/00a-installation.md +3 -53
- package/dist/docs/plugins/azure-schema-registry/00-intro.md +4 -32
- package/dist/docs/plugins/azure-schema-registry/01-installation.md +6 -33
- package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +1 -14
- package/dist/docs/plugins/azure-schema-registry/04-examples.md +0 -2
- package/dist/docs/plugins/backstage/00-overview.md +1 -7
- package/dist/docs/plugins/backstage/01-get-started.md +6 -15
- package/dist/docs/plugins/backstage/06-configuration.md +2 -8
- package/dist/docs/plugins/confluent-schema-registry/00-intro.md +2 -29
- package/dist/docs/plugins/confluent-schema-registry/01-installation.md +2 -26
- package/dist/docs/plugins/eventbridge/00-intro.md +0 -4
- package/dist/docs/plugins/eventbridge/00a-installation.md +1 -87
- package/dist/docs/plugins/eventbridge/03-api.md +2 -20
- package/dist/docs/plugins/github/00-intro.md +0 -31
- package/dist/docs/plugins/github/01-installation.md +2 -34
- package/dist/docs/plugins/graphql/00-intro.md +0 -30
- package/dist/docs/plugins/graphql/01-installation.md +1 -53
- package/dist/docs/plugins/graphql/02-plugin-configuration.md +0 -1
- package/dist/docs/plugins/hookdeck/01-intro.md +1 -1
- package/dist/docs/plugins/openapi/00-intro.md +0 -30
- package/dist/docs/plugins/openapi/01-installation.md +1 -57
- package/dist/docs/plugins/openapi/02-plugin-configuration.md +0 -5
- package/dist/docs/plugins/openapi/03-features.md +0 -4
- package/dist/eventcatalog-config-file-utils.cjs +34 -41
- package/dist/eventcatalog-config-file-utils.d.cts +56 -58
- package/dist/eventcatalog-config-file-utils.d.ts +56 -58
- package/dist/eventcatalog-config-file-utils.js +1 -1
- package/dist/eventcatalog.cjs +408 -281
- package/dist/eventcatalog.config.d.cts +26 -15
- package/dist/eventcatalog.config.d.ts +26 -15
- package/dist/eventcatalog.js +46 -27
- package/dist/features.cjs +36 -49
- package/dist/features.d.cts +1 -3
- package/dist/features.d.ts +1 -3
- package/dist/features.js +4 -6
- package/dist/federation/federate.cjs +37 -44
- package/dist/federation/federate.js +5 -5
- package/dist/federation/source-provider.js +2 -2
- package/dist/generate.cjs +37 -42
- package/dist/generate.js +4 -4
- package/dist/resolve-catalog-dependencies.cjs +34 -41
- package/dist/resolve-catalog-dependencies.js +2 -2
- package/dist/runtime-dependencies/@eventcatalog__visualiser__studio-fonts.css.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__visualiser__studio.css.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__visualiser__studio.mjs +3 -0
- package/dist/runtime-dependencies/htmlparser2.mjs +3 -0
- package/dist/runtime-dependencies/manifest.json +5 -1
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__cjs__create-element.js.mjs +3 -0
- package/dist/utils/child-process-signals.cjs +53 -0
- package/dist/utils/child-process-signals.d.cts +19 -0
- package/dist/utils/child-process-signals.d.ts +19 -0
- package/dist/utils/child-process-signals.js +6 -0
- package/dist/utils/cli-logger.cjs +1 -1
- package/dist/utils/cli-logger.js +2 -2
- package/dist/utils/license-status.cjs +11 -4
- package/dist/utils/license-status.d.cts +3 -2
- package/dist/utils/license-status.d.ts +3 -2
- package/dist/utils/license-status.js +1 -1
- package/eventcatalog/astro.config.mjs +21 -1
- package/eventcatalog/integrations/config-loader.mjs +56 -58
- package/eventcatalog/integrations/skip-startup-reload.mjs +31 -0
- package/eventcatalog/integrations/stable-dependency-order.mjs +29 -0
- package/eventcatalog/integrations/storage.mjs +20 -0
- package/eventcatalog/integrations/studio-server.mjs +4 -1
- package/eventcatalog/src/components/CatalogGraph/CatalogForceGraph.tsx +39 -0
- package/eventcatalog/src/components/ChatPanel/ChatPanel.tsx +2 -0
- package/eventcatalog/src/components/Homepage/CatalogDashboard.astro +342 -0
- package/eventcatalog/src/components/MDX/NodeGraph/AstroNodeGraph.tsx +60 -4
- package/eventcatalog/src/components/MDX/NodeGraph/NodeGraph.astro +5 -1
- package/eventcatalog/src/components/NavigationProgress.astro +7 -0
- package/eventcatalog/src/components/SchemaExplorer/ApiContentViewer.tsx +2 -0
- package/eventcatalog/src/components/SchemaExplorer/ExamplesViewer.tsx +2 -0
- package/eventcatalog/src/components/SchemaExplorer/SchemaCodeModal.tsx +2 -0
- package/eventcatalog/src/components/SchemaExplorer/SchemaContentViewer.tsx +2 -0
- package/eventcatalog/src/components/Search/SearchDataLoader.astro +16 -28
- package/eventcatalog/src/components/Search/SearchModal.tsx +2 -10
- package/eventcatalog/src/components/Search/search-utils.ts +26 -0
- package/eventcatalog/src/components/Seo.astro +5 -1
- package/eventcatalog/src/components/Settings/AssistantSettingsForm.tsx +53 -48
- package/eventcatalog/src/components/Settings/GeneralSettingsForm.tsx +183 -178
- package/eventcatalog/src/components/Settings/LicenseSettings.tsx +140 -31
- package/eventcatalog/src/components/Settings/LlmAccessSettingsForm.tsx +40 -35
- package/eventcatalog/src/components/Settings/LogoUpload.tsx +1 -1
- package/eventcatalog/src/components/Settings/McpSettingsForm.tsx +9 -8
- package/eventcatalog/src/components/Settings/Row.tsx +7 -4
- package/eventcatalog/src/components/Settings/SettingsShared.tsx +3 -3
- package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +37 -76
- package/eventcatalog/src/components/SideNav/NestedSideBar/storage.ts +2 -0
- package/eventcatalog/src/components/SideNav/NestedSideBar/utils.ts +122 -1
- package/eventcatalog/src/components/SideNav/SideNav.astro +9 -1
- package/eventcatalog/src/components/TrialBadge.astro +20 -9
- package/eventcatalog/src/content.config.ts +19 -2
- package/eventcatalog/src/features/auth/error.astro +4 -2
- package/eventcatalog/src/features/auth/login.astro +2 -1
- package/eventcatalog/src/features/auth/middleware/middleware-auth.ts +21 -1
- package/eventcatalog/src/features/auth/unauthorized.astro +1 -1
- package/eventcatalog/src/features/fields/pages/fields.astro +1 -1
- package/eventcatalog/src/features/integrations/eventcatalog-features.ts +13 -7
- package/eventcatalog/src/features/mcp/apps/architecture-diagram/node-chat.tsx +6 -45
- package/eventcatalog/src/features/mcp/apps/canvas/shared.ts +3 -3
- package/eventcatalog/src/features/mcp/apps/canvas/styles.css +3 -1
- package/eventcatalog/src/features/mcp/apps/canvas/view.tsx +7 -5
- package/eventcatalog/src/features/mcp/apps/generated/canvas.html +123 -98
- package/eventcatalog/src/features/mcp/apps/generated/viewer.html +118 -101
- package/eventcatalog/src/features/mcp/mcp-server.ts +20 -4
- package/eventcatalog/src/features/server/start.ts +25 -0
- package/eventcatalog/src/features/storage/database.ts +88 -0
- package/eventcatalog/src/features/storage/migrations.ts +85 -0
- package/eventcatalog/src/features/storage/sql/database.sql +5 -0
- package/eventcatalog/src/features/storage/sql/migrations/0001-studio-canvases.sql +12 -0
- package/eventcatalog/src/features/storage/sql/migrations.sql +15 -0
- package/eventcatalog/src/features/storage/sql.ts +28 -0
- package/eventcatalog/src/features/studio/agent-choreography.ts +13 -10
- package/eventcatalog/src/features/studio/agents.ts +28 -0
- package/eventcatalog/src/features/studio/api/canvases-api.ts +219 -0
- package/eventcatalog/src/features/studio/api/canvases.ts +25 -0
- package/eventcatalog/src/features/studio/api/client.ts +40 -0
- package/eventcatalog/src/features/studio/canvas-actions.ts +160 -34
- package/eventcatalog/src/features/studio/canvas-preview.ts +1 -2
- package/eventcatalog/src/features/studio/catalog.ts +16 -14
- package/eventcatalog/src/features/studio/components/CanvasHeader.tsx +274 -105
- package/eventcatalog/src/features/studio/components/CanvasStatusMenu.tsx +15 -14
- package/eventcatalog/src/features/studio/components/ConnectAgentDialog.tsx +272 -119
- package/eventcatalog/src/features/studio/components/ConnectionsChooser.tsx +1 -2
- package/eventcatalog/src/features/studio/components/DeleteCanvasDialog.tsx +65 -0
- package/eventcatalog/src/features/studio/components/Dialog.tsx +60 -0
- package/eventcatalog/src/features/studio/components/JoinForm.tsx +101 -26
- package/eventcatalog/src/features/studio/components/LeftPanel.tsx +122 -230
- package/eventcatalog/src/features/studio/components/NodeDetails.tsx +183 -0
- package/eventcatalog/src/features/studio/components/OpenInStudioDialog.tsx +79 -0
- package/eventcatalog/src/features/studio/components/Presence.tsx +52 -45
- package/eventcatalog/src/features/studio/components/ShareDialog.tsx +277 -141
- package/eventcatalog/src/features/studio/components/ShortcutsDialog.tsx +41 -0
- package/eventcatalog/src/features/studio/components/StudioDesigner.tsx +1314 -385
- package/eventcatalog/src/features/studio/components/StudioNotice.astro +24 -0
- package/eventcatalog/src/features/studio/document-name.ts +7 -0
- package/eventcatalog/src/features/studio/from-visualiser.ts +138 -0
- package/eventcatalog/src/features/studio/hooks/presence-sender.ts +19 -2
- package/eventcatalog/src/features/studio/hooks/use-canvas-webmcp.ts +9 -3
- package/eventcatalog/src/features/studio/hooks/use-comments.ts +2 -2
- package/eventcatalog/src/features/studio/hooks/use-follow-camera.ts +8 -3
- package/eventcatalog/src/features/studio/hooks/use-studio-flow.ts +244 -32
- package/eventcatalog/src/features/studio/identity.ts +25 -1
- package/eventcatalog/src/features/studio/limits.ts +2 -0
- package/eventcatalog/src/features/studio/pages/[id].astro +42 -16
- package/eventcatalog/src/features/studio/pages/index.astro +596 -373
- package/eventcatalog/src/features/studio/pages/webmcp-relay.ts +12 -15
- package/eventcatalog/src/features/studio/server/canvas-mcp.ts +8 -23
- package/eventcatalog/src/features/studio/server/runtime.ts +150 -46
- package/eventcatalog/src/features/studio/server/sql/storage.sql +18 -0
- package/eventcatalog/src/features/studio/server/storage.ts +53 -73
- package/eventcatalog/src/features/studio/webmcp-relay/LICENSE +21 -0
- package/eventcatalog/src/features/studio/webmcp-relay/README.md +5 -0
- package/eventcatalog/src/features/studio/webmcp-relay/embed.js +2 -0
- package/eventcatalog/src/features/studio/webmcp-relay/widget.html +10 -0
- package/eventcatalog/src/features/studio/webmcp-relay/widget.js +1 -0
- package/eventcatalog/src/features/tools/catalog-tools.ts +3 -1
- package/eventcatalog/src/layouts/BaseLayout.astro +4 -4
- package/eventcatalog/src/layouts/SettingsLayout.astro +2 -2
- package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +3 -2
- package/eventcatalog/src/pages/_index.astro +5 -342
- package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.spec.ts +2 -3
- package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/index.astro +3 -1
- package/eventcatalog/src/pages/diagrams/[id]/[version]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/diagrams/[id]/[version]/embed.astro +1 -0
- package/eventcatalog/src/pages/diagrams/[id]/[version]/index.astro +1 -0
- package/eventcatalog/src/pages/directory/[type]/_index.data.ts +5 -7
- package/eventcatalog/src/pages/directory/[type]/index.astro +3 -1
- package/eventcatalog/src/pages/discover/[type]/_index.data.ts +5 -7
- package/eventcatalog/src/pages/discover/[type]/index.astro +3 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/asyncapi/[filename].astro +3 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/asyncapi/_[filename].data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/examples/[...filename].astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/examples/_[...filename].data.ts +0 -4
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/field-lineage/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/field-lineage/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/[filename].astro +3 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/_[filename].data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/_index.data.spec.ts +2 -3
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/spec/[filename].astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/spec/_[filename].data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/index.astro +2 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/index.astro +1 -0
- package/eventcatalog/src/pages/docs/[type]/[id]/language/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/[type]/[id]/language/index.astro +1 -0
- package/eventcatalog/src/pages/docs/custom/[...path]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/custom/[...path]/index.astro +1 -0
- package/eventcatalog/src/pages/docs/services/[id]/[docType]/[docId]/index.astro +1 -1
- package/eventcatalog/src/pages/docs/services/[id]/[version]/resources/index.astro +1 -0
- package/eventcatalog/src/pages/docs/services/[id]/asyncapi/[filename].astro +1 -1
- package/eventcatalog/src/pages/docs/services/[id]/changelog/index.astro +1 -1
- package/eventcatalog/src/pages/docs/services/[id]/graphql/[filename].astro +1 -1
- package/eventcatalog/src/pages/docs/services/[id]/spec/[filename].astro +1 -1
- package/eventcatalog/src/pages/docs/teams/[id]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/teams/[id]/index.astro +1 -0
- package/eventcatalog/src/pages/docs/users/[id]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/docs/users/[id]/index.astro +1 -0
- package/eventcatalog/src/pages/index.astro +4 -2
- package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/index.astro +9 -1
- package/eventcatalog/src/pages/schemas/explorer/_index.data.ts +0 -7
- package/eventcatalog/src/pages/schemas/explorer/index.astro +4 -2
- package/eventcatalog/src/pages/settings/license.astro +9 -1
- package/eventcatalog/src/pages/triggers/[type]/[id]/[version]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/triggers/[type]/[id]/[version]/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/[type]/[id]/_index.data.ts +38 -0
- package/eventcatalog/src/pages/visualiser/[type]/[id]/index.astro +18 -41
- package/eventcatalog/src/pages/visualiser/designs/[id]/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/designs/[id]/index.astro +2 -1
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/_index.data.ts +0 -7
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/index.astro +1 -0
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/index.astro +1 -0
- package/eventcatalog/src/types/react-syntax-highlighter.d.ts +10 -0
- package/eventcatalog/src/utils/collections/flows.ts +20 -7
- package/eventcatalog/src/utils/collections/resource-owners.ts +8 -2
- package/eventcatalog/src/utils/collections/resources.ts +2 -0
- package/eventcatalog/src/utils/collections/util.ts +8 -4
- package/eventcatalog/src/utils/git.ts +11 -0
- package/eventcatalog/src/utils/homepage-dashboard.ts +143 -0
- package/eventcatalog/src/utils/license.ts +1 -1
- package/eventcatalog/src/utils/link-validation.ts +25 -19
- package/eventcatalog/src/utils/node-graphs/domain-entity-map.ts +3 -1
- package/eventcatalog/src/utils/node-graphs/domain-levels-node-graph.ts +3 -3
- package/eventcatalog/src/utils/node-graphs/field-node-graph.ts +4 -2
- package/eventcatalog/src/utils/node-graphs/layout-node-graph.ts +20 -1
- package/eventcatalog/src/utils/node-graphs/node-resource.ts +67 -0
- package/eventcatalog/src/utils/node-graphs/systems-node-graph.ts +1 -1
- package/eventcatalog/src/utils/page-loaders/hybrid-page.ts +4 -15
- package/eventcatalog/src/utils/page-title.ts +15 -0
- package/eventcatalog/src/utils/syntax-highlighter-renderer.ts +64 -0
- package/eventcatalog/src/utils/trial.ts +13 -0
- package/package.json +11 -11
- package/dist/docs/development/ask-your-architecture/05-skills/02-installation.md +0 -60
- package/dist/docs/development/ask-your-architecture/05-skills/_category_.json +0 -11
- package/dist/docs/development/ask-your-architecture/06-slack-integration/01-introduction.md +0 -63
- package/dist/docs/development/ask-your-architecture/06-slack-integration/02-slack-app-setup.md +0 -154
- package/dist/docs/development/ask-your-architecture/06-slack-integration/03-installation.md +0 -169
- package/dist/docs/development/ask-your-architecture/06-slack-integration/04-deployment.md +0 -236
- package/dist/docs/development/ask-your-architecture/06-slack-integration/05-usage.md +0 -140
- package/dist/docs/development/ask-your-architecture/06-slack-integration/06-troubleshooting.md +0 -268
- package/dist/docs/development/ask-your-architecture/06-slack-integration/_category_.json +0 -13
- package/dist/docs/development/guides/domains/06-visualize-domains/01-domain-integration-map.md +0 -40
- package/dist/runtime-dependencies/@mcp-b__webmcp-local-relay.mjs +0 -3
- package/eventcatalog/src/features/studio/canvas-doc.ts +0 -409
- package/eventcatalog/src/features/studio/clipboard.ts +0 -97
- package/eventcatalog/src/features/studio/components/CanvasControls.tsx +0 -154
- package/eventcatalog/src/features/studio/components/Comments.tsx +0 -770
- package/eventcatalog/src/features/studio/components/ContainerChooser.tsx +0 -145
- package/eventcatalog/src/features/studio/components/DragGhost.tsx +0 -115
- package/eventcatalog/src/features/studio/components/Picture.tsx +0 -21
- package/eventcatalog/src/features/studio/components/PropertiesPanel.tsx +0 -212
- package/eventcatalog/src/features/studio/components/canvas-nodes.tsx +0 -255
- package/eventcatalog/src/features/studio/components/icons.ts +0 -53
- package/eventcatalog/src/features/studio/components/status.ts +0 -51
- package/eventcatalog/src/features/studio/edges.ts +0 -56
- package/eventcatalog/src/features/studio/flow-state.ts +0 -92
- package/eventcatalog/src/features/studio/grouping.ts +0 -226
- package/eventcatalog/src/features/studio/layout.ts +0 -42
- package/eventcatalog/src/features/studio/levels.ts +0 -282
- package/eventcatalog/src/features/studio/node-types.ts +0 -205
- package/eventcatalog/src/features/studio/pages/new.astro +0 -24
- package/eventcatalog/src/features/studio/pages/wake.ts +0 -15
- package/eventcatalog/src/features/studio/placement.ts +0 -197
- package/eventcatalog/src/features/studio/studio.css +0 -273
- package/dist/{chunk-A2RZR3U4.js → chunk-6K7XZAYI.js} +3 -3
|
@@ -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
|
-
| `/
|
|
227
|
-
| `/
|
|
228
|
-
| `/
|
|
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
|
|
package/dist/docs/development/guides/resources/schemas/04-explore-schemas/01-schema-explorer.md
CHANGED
|
@@ -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
|
|
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
|
-
|
|
117
|
+
You can get API (GET) access to your schemas for mocking or testing. See [Schema API](/docs/development/guides/resources/schemas/schema-api).
|
package/dist/docs/development/guides/resources/schemas/04-explore-schemas/02-fields-explorer.md
CHANGED
|
@@ -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
|

|
|
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
|

|
|
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
|

|
|
@@ -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
|
|
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
|
+

|
|
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
|
-
| `/
|
|
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
|
|
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
|
|
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
|
-
##
|
|
142
|
+
## Architecture
|
|
145
143
|
|
|
146
144
|
<NodeGraph />
|
|
147
145
|
```
|
|
148
146
|
|
|
149
|
-

|
|
150
148
|
|
|
151
|
-
|
|
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
|
-
|
|
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}
|
|
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
|
|
5
|
+
- System context diagram
|
|
6
|
+
- System diagram
|
|
6
7
|
- Architecture visualizer
|
|
7
|
-
sidebar_label: System
|
|
8
|
-
title: System
|
|
9
|
-
description: Visualize systems from
|
|
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
|
|
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
|
|
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
|
|
21
|
+
## Start with the System Context Diagram
|
|
21
22
|
|
|
22
|
-
The global
|
|
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
|
-

|
|
32
33
|
|
|
33
|
-
|
|
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
|
-
|
|
42
|
+
<AddedIn version="5.0.0" />
|
|
42
43
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-

|
|
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
|
-
|
|
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
|
+

|
|
59
|
+
|
|
60
|
+

|
|
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/
|
|
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
|
|
64
|
-
- Select a system to
|
|
65
|
-
-
|
|
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
|
-
| `/
|
|
44
|
-
| `/visualiser/systems/{system-id}/{version}
|
|
45
|
-
| `/visualiser/system-context-map` | Global
|
|
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
|
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 1
|
|
3
|
+
keywords:
|
|
4
|
+
- license
|
|
5
|
+
- license.jwt
|
|
6
|
+
- EC_LICENSE
|
|
7
|
+
- trial
|
|
8
|
+
- offline license
|
|
9
|
+
sidebar_label: License file
|
|
10
|
+
title: License file
|
|
11
|
+
description: Where to put your license.jwt file, how EventCatalog verifies it, and how EventCatalog shows your license and trial status.
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
import AddedIn from '@site/src/components/MDX/AddedIn';
|
|
15
|
+
|
|
16
|
+
<AddedIn version="5.0.0" />
|
|
17
|
+
|
|
18
|
+
From v5, EventCatalog is licensed under the Business Source License 1.1 and every feature is included (on a paid plan, federation is Enterprise only). Your license is a signed file called `license.jwt`. EventCatalog reads it to show who the catalog is licensed to and when the license expires.
|
|
19
|
+
|
|
20
|
+
This page covers how the file works. To find out whether you need a commercial license, read the [licensing FAQ](/license-faq). For prices, see [pricing](/pricing).
|
|
21
|
+
|
|
22
|
+
:::info Using v4 license keys?
|
|
23
|
+
|
|
24
|
+
License keys such as `EVENTCATALOG_SCALE_LICENSE_KEY` are covered in [License Keys (v4)](/docs/development/license-keys/overview).
|
|
25
|
+
|
|
26
|
+
:::
|
|
27
|
+
|
|
28
|
+
## Get a license file
|
|
29
|
+
|
|
30
|
+
Get your `license.jwt` from [EventCatalog Cloud](https://eventcatalog.cloud). Free users confirm their eligibility there, and commercial customers get a file with their license. See [license keys in the FAQ](/license-faq#keys).
|
|
31
|
+
|
|
32
|
+
One file covers your whole organization. You don't need a file per catalog or per environment.
|
|
33
|
+
|
|
34
|
+
## Add the file to your catalog
|
|
35
|
+
|
|
36
|
+
Put `license.jwt` in the root of your catalog, next to `eventcatalog.config.js`.
|
|
37
|
+
|
|
38
|
+
```txt
|
|
39
|
+
my-catalog/
|
|
40
|
+
├── domains/
|
|
41
|
+
├── services/
|
|
42
|
+
├── eventcatalog.config.js
|
|
43
|
+
└── license.jwt
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
To keep the file somewhere else, set `EC_LICENSE` to the path of the file. `EC_LICENSE` is a file path, not the contents of the file.
|
|
47
|
+
|
|
48
|
+
```bash title=".env"
|
|
49
|
+
EC_LICENSE=/etc/secrets/eventcatalog/license.jwt
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
EventCatalog loads `.env` before it checks the license, so you can set `EC_LICENSE` there or in your shell.
|
|
53
|
+
|
|
54
|
+
### Use the file in CI/CD
|
|
55
|
+
|
|
56
|
+
You can commit `license.jwt` with your catalog. If you prefer not to, store its contents as a CI secret, write it to a file during the job, and point `EC_LICENSE` at that file:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# LICENSE_JWT is a CI secret that holds the contents of license.jwt
|
|
60
|
+
echo "$LICENSE_JWT" > "$RUNNER_TEMP/license.jwt"
|
|
61
|
+
export EC_LICENSE="$RUNNER_TEMP/license.jwt"
|
|
62
|
+
|
|
63
|
+
npx eventcatalog build
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## How the file is verified
|
|
67
|
+
|
|
68
|
+
EventCatalog verifies the file offline, against a public key built into EventCatalog. It checks the signature, the issuer, the audience, and the dates the license is valid from and until.
|
|
69
|
+
|
|
70
|
+
There are no calls home: the license works air-gapped, and nothing about your catalog is sent to EventCatalog to verify it.
|
|
71
|
+
|
|
72
|
+
When you change the file, EventCatalog verifies it again.
|
|
73
|
+
|
|
74
|
+
## License status in the terminal
|
|
75
|
+
|
|
76
|
+
`eventcatalog dev` and `eventcatalog build` print the catalog's license status when they start.
|
|
77
|
+
|
|
78
|
+
With a valid license, they show who it's licensed to and when it expires:
|
|
79
|
+
|
|
80
|
+
```txt
|
|
81
|
+
╭────── EventCatalog Commercial License ──────╮
|
|
82
|
+
│ │
|
|
83
|
+
│ Licensed to Acme Ltd │
|
|
84
|
+
│ Valid until Oct 1, 2027 (359 days left) │
|
|
85
|
+
│ │
|
|
86
|
+
╰─────────────────────────────────────────────╯
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
| Status | What the terminal shows |
|
|
90
|
+
| --- | --- |
|
|
91
|
+
| Valid license | A green **EventCatalog Commercial License** box with who it's licensed to and the expiry date. |
|
|
92
|
+
| Expires in fewer than 30 days | A yellow box with the days left and a link to [eventcatalog.cloud](https://eventcatalog.cloud) to renew it. |
|
|
93
|
+
| Expired license | A yellow **EventCatalog License Expired** box with the date it expired, a link to renew it, and the trial status. |
|
|
94
|
+
| Invalid license | A yellow **EventCatalog license** box with the reason, the trial status, and a link to the licensing FAQ. |
|
|
95
|
+
| No license | An **EventCatalog trial** box with the days left of the trial and when it ends. |
|
|
96
|
+
|
|
97
|
+
A license is invalid when it can't be verified, for example when:
|
|
98
|
+
|
|
99
|
+
- the file is empty
|
|
100
|
+
- it is not valid yet
|
|
101
|
+
- its signature is invalid
|
|
102
|
+
- it was not issued by EventCatalog
|
|
103
|
+
- it has no expiry date
|
|
104
|
+
|
|
105
|
+
## License status in the catalog
|
|
106
|
+
|
|
107
|
+
### Header badge
|
|
108
|
+
|
|
109
|
+
While you run `eventcatalog dev`, the header shows a badge for your license or trial. The badge never appears in built or served catalogs.
|
|
110
|
+
|
|
111
|
+
| Status | Badge | Links to |
|
|
112
|
+
| --- | --- | --- |
|
|
113
|
+
| No license | **Trial · N days left**, counting down the trial | [Licensing FAQ](/license-faq) |
|
|
114
|
+
| No license, trial over | **Trial ended** | [Licensing FAQ](/license-faq) |
|
|
115
|
+
| Valid license, 30 or more days left | No badge | |
|
|
116
|
+
| Valid license, fewer than 30 days left | **License · N days left** | Settings > License |
|
|
117
|
+
| Expired license | **License expired** | Settings > License |
|
|
118
|
+
|
|
119
|
+
### Settings > License
|
|
120
|
+
|
|
121
|
+
**Settings > License** (`/settings/license`) shows the catalog's license. For a valid license it lists:
|
|
122
|
+
|
|
123
|
+
- **Licensed to**
|
|
124
|
+
- **License ID**
|
|
125
|
+
- **Issued**
|
|
126
|
+
- **Expires**
|
|
127
|
+
- **Time left**
|
|
128
|
+
|
|
129
|
+
When the license has fewer than 30 days left, or has expired, the page shows a callout with a **Renew license** button that opens [EventCatalog Cloud](https://eventcatalog.cloud). When the file can't be verified, the page shows the reason.
|
|
130
|
+
|
|
131
|
+
Without a valid license, the page also shows the trial: its length, when it started, when it ends and the time left.
|
|
132
|
+
|
|
133
|
+
In a static build, the page shows the license as it was when you built the catalog. The days left are counted in the browser, so they stay current.
|
|
134
|
+
|
|
135
|
+
## The trial
|
|
136
|
+
|
|
137
|
+
Without a valid license, EventCatalog counts down a trial, starting from when you first ran your catalog.
|
|
138
|
+
|
|
139
|
+
The trial countdown in EventCatalog is a reminder. The terms of the evaluation, and what to do when it ends, are in the [licensing FAQ](/license-faq#production).
|
|
140
|
+
|
|
141
|
+
## When a trial or license ends
|
|
142
|
+
|
|
143
|
+
Your catalog keeps building and running. EventCatalog never fails a build, or turns features off, because a trial ended or a license expired. It shows reminders in the terminal, in the dev header and on Settings > License.
|
|
144
|
+
|
|
145
|
+
To renew a license, get a new `license.jwt` from [EventCatalog Cloud](https://eventcatalog.cloud) and replace the file.
|
|
146
|
+
|
|
147
|
+
## v4 license keys
|
|
148
|
+
|
|
149
|
+
EventCatalog checks for a `license.jwt` first. If there isn't a valid one, it still recognizes a Scale or Starter license key (`EVENTCATALOG_SCALE_LICENSE_KEY` or `EVENTCATALOG_STARTER_LICENSE_KEY`). With one of those keys, EventCatalog shows no trial, and Settings > License shows the plan as active.
|
|
150
|
+
|
|
151
|
+
These keys are verified online, as they were in v4. See [License Keys (v4)](/docs/development/license-keys/overview).
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"label": "License",
|
|
3
|
+
"position": 10.5,
|
|
4
|
+
"collapsible": true,
|
|
5
|
+
"collapsed": true,
|
|
6
|
+
"link": {
|
|
7
|
+
"type": "generated-index",
|
|
8
|
+
"slug": "development/license",
|
|
9
|
+
"title": "License",
|
|
10
|
+
"description": "How EventCatalog v5 reads and verifies your license file, and how the trial works."
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
|
-
"label": "License Keys",
|
|
2
|
+
"label": "License Keys (v4)",
|
|
3
3
|
"position": 11,
|
|
4
4
|
"collapsible": true,
|
|
5
5
|
"collapsed": true,
|
|
6
6
|
"link": {
|
|
7
7
|
"type": "generated-index",
|
|
8
8
|
"slug": "development/license-keys",
|
|
9
|
-
"title": "License Keys",
|
|
10
|
-
"description": "How
|
|
9
|
+
"title": "License Keys (v4)",
|
|
10
|
+
"description": "How license keys worked in EventCatalog v4 and earlier. From v5, everything is included: see the licensing FAQ."
|
|
11
11
|
}
|
|
12
12
|
}
|