@eventcatalog/create-eventcatalog 4.3.8 → 4.3.10

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 (23) hide show
  1. package/dist/index.js +7 -3
  2. package/package.json +1 -1
  3. package/templates/default/domains/Catalog/index.mdx +6 -0
  4. package/templates/default/domains/Catalog/systems/product-catalog-system/containers/product-database/index.mdx +2 -0
  5. package/templates/default/domains/Catalog/systems/search-system/containers/search-index/index.mdx +2 -0
  6. package/templates/default/domains/Customer/index.mdx +0 -6
  7. package/templates/default/domains/Customer/systems/customer-management-system/containers/customer-database/index.mdx +2 -0
  8. package/templates/default/domains/Customer/systems/identity-provider/containers/user-directory/index.mdx +2 -0
  9. package/templates/default/domains/Fulfilment/index.mdx +0 -6
  10. package/templates/default/domains/Fulfilment/systems/inventory-system/containers/inventory-database/index.mdx +2 -0
  11. package/templates/default/domains/Fulfilment/systems/warehouse-system/containers/warehouse-database/index.mdx +2 -0
  12. package/templates/default/domains/Ordering/index.mdx +6 -0
  13. package/templates/default/domains/Ordering/systems/checkout-system/index.mdx +6 -0
  14. package/templates/default/domains/Ordering/systems/order-management-system/containers/order-database/index.mdx +2 -0
  15. package/templates/default/domains/Payments/index.mdx +6 -0
  16. package/templates/default/domains/Payments/systems/payment-processing-system/containers/payment-database/index.mdx +2 -0
  17. package/templates/default/domains/Payments/systems/payment-processing-system/services/PaymentAPI/index.mdx +6 -0
  18. package/templates/default/domains/Reviews/containers/rating-cache/index.mdx +2 -0
  19. package/templates/default/domains/Reviews/containers/review-database/index.mdx +2 -0
  20. package/templates/default/domains/Shopping/index.mdx +0 -6
  21. package/templates/default/domains/Shopping/systems/cart-system/containers/cart-database/index.mdx +2 -0
  22. package/templates/default/domains/Shopping/systems/promotion-system/containers/promotion-database/index.mdx +2 -0
  23. package/templates/default/pages/homepage.astro +12 -2
package/dist/index.js CHANGED
@@ -25092,7 +25092,7 @@ var import_fs2 = require("fs");
25092
25092
  var actualFS = __toESM(require("fs"), 1);
25093
25093
  var import_promises = require("fs/promises");
25094
25094
 
25095
- // ../../node_modules/.pnpm/minipass@7.1.2/node_modules/minipass/dist/esm/index.js
25095
+ // ../../node_modules/.pnpm/minipass@7.1.3/node_modules/minipass/dist/esm/index.js
25096
25096
  var import_node_events = require("events");
25097
25097
  var import_node_stream = __toESM(require("stream"), 1);
25098
25098
  var import_node_string_decoder = require("string_decoder");
@@ -25173,7 +25173,7 @@ var PipeProxyErrors = class extends Pipe {
25173
25173
  }
25174
25174
  constructor(src, dest, opts) {
25175
25175
  super(src, dest, opts);
25176
- this.proxyErrors = (er) => dest.emit("error", er);
25176
+ this.proxyErrors = (er) => this.dest.emit("error", er);
25177
25177
  src.on("error", this.proxyErrors);
25178
25178
  }
25179
25179
  };
@@ -25889,6 +25889,8 @@ var Minipass = class extends import_node_events.EventEmitter {
25889
25889
  return: stop,
25890
25890
  [Symbol.asyncIterator]() {
25891
25891
  return this;
25892
+ },
25893
+ [Symbol.asyncDispose]: async () => {
25892
25894
  }
25893
25895
  };
25894
25896
  }
@@ -25924,6 +25926,8 @@ var Minipass = class extends import_node_events.EventEmitter {
25924
25926
  return: stop,
25925
25927
  [Symbol.iterator]() {
25926
25928
  return this;
25929
+ },
25930
+ [Symbol.dispose]: () => {
25927
25931
  }
25928
25932
  };
25929
25933
  }
@@ -29831,7 +29835,7 @@ var import_os2 = __toESM(require("os"));
29831
29835
  var package_default = {
29832
29836
  name: "@eventcatalog/create-eventcatalog",
29833
29837
  description: "Create EventCatalog with one command",
29834
- version: "4.3.8",
29838
+ version: "4.3.10",
29835
29839
  license: "MIT",
29836
29840
  bin: {
29837
29841
  "create-catalog": "./dist/index.js"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@eventcatalog/create-eventcatalog",
3
3
  "description": "Create EventCatalog with one command",
4
- "version": "4.3.8",
4
+ "version": "4.3.10",
5
5
  "license": "MIT",
6
6
  "bin": {
7
7
  "create-catalog": "./dist/index.js"
@@ -54,6 +54,12 @@ The **Catalog** domain is responsible for the lifecycle of every product Acme In
54
54
 
55
55
  The **Product Catalog System** is the authoritative source of product data. Whenever a product is created, updated or deleted it publishes a domain event. The **Search System** subscribes to those events, keeps its search index in sync, and exposes a search API so other teams never have to query the catalog database directly.
56
56
 
57
+ ## Architecture Graph
58
+
59
+ Where Catalog sits in the wider architecture — its systems and messages, and the neighbouring domains it talks to.
60
+
61
+ <ArchitectureGraph />
62
+
57
63
  The diagram below shows the domain's systems, how they relate, and the people who interact with them.
58
64
 
59
65
  <ContextDiagram />
@@ -2,6 +2,8 @@
2
2
  id: product-database
3
3
  name: Product Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - product-platform
5
7
  summary: PostgreSQL database that is the system of record for all product data.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -2,6 +2,8 @@
2
2
  id: search-index
3
3
  name: Search Index
4
4
  version: 1.0.0
5
+ owners:
6
+ - search-platform
5
7
  summary: The denormalised, search-optimised index of products that powers product search.
6
8
  container_type: searchIndex
7
9
  technology: opensearch@2
@@ -59,9 +59,3 @@ The **Customer Management System** owns customer profile data — it accepts reg
59
59
  The systems in this domain, how they relate, and the people who interact with them.
60
60
 
61
61
  <ContextDiagram />
62
-
63
- ## Resource Diagram
64
-
65
- The components that make up this domain.
66
-
67
- <NodeGraph />
@@ -2,6 +2,8 @@
2
2
  id: customer-database
3
3
  name: Customer Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - customer-platform
5
7
  summary: PostgreSQL database that is the system of record for all customer profile data.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -2,6 +2,8 @@
2
2
  id: user-directory
3
3
  name: User Directory
4
4
  version: 1.0.0
5
+ owners:
6
+ - customer-platform
5
7
  summary: The directory of customer credentials and identities — the source of truth for authentication.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -75,9 +75,3 @@ When an order is completed, the **Warehouse System** picks and packs it, having
75
75
  The systems in this domain, how they relate, and the people who interact with them.
76
76
 
77
77
  <ContextDiagram />
78
-
79
- ## Resource Diagram
80
-
81
- The components that make up this domain.
82
-
83
- <NodeGraph />
@@ -2,6 +2,8 @@
2
2
  id: inventory-database
3
3
  name: Inventory Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - fulfilment-platform
5
7
  summary: PostgreSQL database that is the system of record for stock levels and reservations.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -2,6 +2,8 @@
2
2
  id: warehouse-database
3
3
  name: Warehouse Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - fulfilment-platform
5
7
  summary: PostgreSQL database that stores picking jobs and their status.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -68,3 +68,9 @@ The systems in this domain, how they relate, and the people who interact with th
68
68
  The components that make up this domain.
69
69
 
70
70
  <NodeGraph />
71
+
72
+ ## Architecture Graph
73
+
74
+ Where Ordering sits in the wider architecture — its systems and messages, and the neighbouring domains it talks to.
75
+
76
+ <ArchitectureGraph />
@@ -55,3 +55,9 @@ The services and messages that make up this system.
55
55
  - [[command\|reserve-inventory]] — reserve stock for the items in the cart.
56
56
  - [[command\|authorize-payment]] — authorize payment for the order total.
57
57
  - [[command\|create-order]] — create the order in the Order Management System.
58
+
59
+ ## Architecture Graph
60
+
61
+ The checkout system's neighbourhood in the wider architecture.
62
+
63
+ <ArchitectureGraph />
@@ -2,6 +2,8 @@
2
2
  id: order-database
3
3
  name: Order Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - ordering-platform
5
7
  summary: PostgreSQL database that is the system of record for orders and their items.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -67,3 +67,9 @@ The **Payment Processing System** is the internal orchestrator. When the Orderin
67
67
  The systems in this domain, how they relate, and the people who interact with them.
68
68
 
69
69
  <ContextDiagram />
70
+
71
+ ## Architecture Graph
72
+
73
+ Where Payments sits in the wider architecture — its systems and messages, and the neighbouring domains it talks to.
74
+
75
+ <ArchitectureGraph />
@@ -2,6 +2,8 @@
2
2
  id: payment-database
3
3
  name: Payment Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - payments-platform
5
7
  summary: PostgreSQL database that is the system of record for payments and refunds.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -46,6 +46,12 @@ The **Payment API** is the entry point to the Payment Processing System. It rece
46
46
 
47
47
  <NodeGraph />
48
48
 
49
+ ## Architecture Graph
50
+
51
+ How PaymentAPI connects to the rest of the catalog — the messages it exchanges and the systems around it.
52
+
53
+ <ArchitectureGraph />
54
+
49
55
  <MessageTable format="all" limit={8} />
50
56
 
51
57
  <Footer />
@@ -2,6 +2,8 @@
2
2
  id: rating-cache
3
3
  name: Rating Cache
4
4
  version: 1.0.0
5
+ owners:
6
+ - reviews-platform
5
7
  summary: Redis cache that serves each product's aggregate star rating with low latency.
6
8
  container_type: cache
7
9
  technology: redis@7
@@ -2,6 +2,8 @@
2
2
  id: review-database
3
3
  name: Review Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - reviews-platform
5
7
  summary: PostgreSQL database that is the system of record for reviews and their moderation state.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -59,9 +59,3 @@ The **Cart System** owns the customer's cart and the checkout flow. When pricing
59
59
  The systems in this domain, how they relate, and the people who interact with them.
60
60
 
61
61
  <ContextDiagram />
62
-
63
- ## Resource Diagram
64
-
65
- The components that make up this domain.
66
-
67
- <NodeGraph />
@@ -2,6 +2,8 @@
2
2
  id: cart-database
3
3
  name: Cart Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - shopping-platform
5
7
  summary: PostgreSQL database that is the system of record for shopping carts and their items.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -2,6 +2,8 @@
2
2
  id: promotion-database
3
3
  name: Promotion Database
4
4
  version: 1.0.0
5
+ owners:
6
+ - shopping-platform
5
7
  summary: PostgreSQL store of promotion and discount rules.
6
8
  container_type: database
7
9
  technology: postgres@16
@@ -2,8 +2,8 @@
2
2
  import { getCollection } from 'astro:content';
3
3
 
4
4
  // EventCatalog injects its components via Astro.props.components. Destructure the ones
5
- // this landing page uses (including the SystemContextMap embed).
6
- const { Tile, Tiles, SystemContextMap } = Astro.props.components;
5
+ // this landing page uses (including the ArchitectureGraph and SystemContextMap embeds).
6
+ const { Tile, Tiles, SystemContextMap, ArchitectureGraph } = Astro.props.components;
7
7
 
8
8
  // Count the catalog's top-level resources. We filter out versioned/ entries so each
9
9
  // resource is counted once (by its latest version).
@@ -49,6 +49,16 @@ const stats = [
49
49
  }
50
50
  </div>
51
51
 
52
+ {/* Architecture graph */}
53
+ <h2 class="text-2xl font-semibold text-[rgb(var(--ec-page-text))] mt-12 mb-2">Architecture</h2>
54
+ <p class="text-[rgb(var(--ec-page-text-muted))] font-light mb-2">
55
+ Every resource in the catalog and the relationships between them.
56
+ </p>
57
+ </div>
58
+
59
+ <ArchitectureGraph lens="domains" lensPicker="true" />
60
+
61
+ <div class="not-prose">
52
62
  {/* System context map */}
53
63
  <h2 class="text-2xl font-semibold text-[rgb(var(--ec-page-text))] mt-12 mb-2">System context map</h2>
54
64
  <p class="text-[rgb(var(--ec-page-text-muted))] font-light mb-2">