@eventcatalog/create-eventcatalog 3.0.1 → 3.0.2

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/dist/index.js CHANGED
@@ -22466,7 +22466,7 @@ var import_os2 = __toESM(require("os"));
22466
22466
  var package_default = {
22467
22467
  name: "@eventcatalog/create-eventcatalog",
22468
22468
  description: "Create EventCatalog with one command",
22469
- version: "3.0.1",
22469
+ version: "3.0.2",
22470
22470
  bin: {
22471
22471
  "create-catalog": "./dist/index.js"
22472
22472
  },
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": "3.0.1",
4
+ "version": "3.0.2",
5
5
  "bin": {
6
6
  "create-catalog": "./dist/index.js"
7
7
  },
@@ -0,0 +1,152 @@
1
+ ---
2
+ id: E-Commerce
3
+ name: E-Commerce
4
+ version: 1.0.0
5
+ owners:
6
+ - dboyne
7
+ - full-stack
8
+ domains:
9
+ - id: Orders
10
+ - id: Payment
11
+ - id: Subscription
12
+ badges:
13
+ - content: Core domain
14
+ backgroundColor: blue
15
+ textColor: blue
16
+ icon: RectangleGroupIcon
17
+ - content: Business Critical
18
+ backgroundColor: yellow
19
+ textColor: yellow
20
+ icon: ShieldCheckIcon
21
+
22
+ resourceGroups:
23
+ - id: related-resources
24
+ title: Core FlowMart Services
25
+ items:
26
+ - id: InventoryService
27
+ type: service
28
+ - id: OrdersService
29
+ type: service
30
+ - id: NotificationService
31
+ type: service
32
+ - id: ShippingService
33
+ type: service
34
+ - id: CustomerService
35
+ type: service
36
+ - id: PaymentService
37
+ type: service
38
+ - id: AnalyticsService
39
+ type: service
40
+ ---
41
+
42
+ import Footer from '@catalog/components/footer.astro';
43
+
44
+ The E-Commerce domain is the core business domain of FlowMart, our modern digital marketplace. This domain orchestrates all critical business operations from product discovery to order fulfillment, handling millions of transactions monthly across our global customer base.
45
+
46
+ <Tiles>
47
+ <Tile
48
+ icon="UserGroupIcon"
49
+ href="/docs/teams/full-stack"
50
+ title="Engineering Support"
51
+ description="Questions? Contact our full-stack team for technical support"
52
+ />
53
+ <Tile
54
+ icon="RectangleGroupIcon"
55
+ href={`/visualiser/domains/${frontmatter.id}/${frontmatter.version}`}
56
+ title="Domain Architecture"
57
+ description="Explore our domain structure and service interactions"
58
+ />
59
+ </Tiles>
60
+
61
+ ## Domain Overview
62
+
63
+ FlowMart's E-Commerce domain is built on event-driven microservices architecture, enabling:
64
+ - Real-time inventory management across multiple warehouses
65
+ - Seamless payment processing with multiple providers
66
+ - Smart order routing and fulfillment
67
+ - Personalized customer notifications
68
+ - Subscription-based shopping experiences
69
+ - Advanced fraud detection and prevention
70
+
71
+ ## Sub domains
72
+
73
+ The E-Commerce domain is built on the following sub domains:
74
+
75
+ - <ResourceLink id="Orders" type="domain">Orders</ResourceLink> - Core domain for order management
76
+ - <ResourceLink id="Payment" type="domain">Payment</ResourceLink> - A generic domain for payment processing using Stripe as a payment provider
77
+ - <ResourceLink id="Subscription" type="domain">Subscription</ResourceLink> - Generic subscription domain handling users subscriptions
78
+
79
+ ## Target Architecture (Event Storming Results)
80
+
81
+ Our target architecture was defined through collaborative event storming sessions with product, engineering, and business stakeholders. This represents our vision for FlowMart's commerce capabilities.
82
+
83
+ <Miro boardId="uXjVIHCImos=/" moveToWidget="3074457347671667709" edit={false} />
84
+
85
+ ## Current Production Architecture
86
+
87
+ Our current event-driven architecture powering FlowMart's shopping experience:
88
+
89
+ <NodeGraph />
90
+
91
+ ### Order Processing Flow
92
+
93
+ ```mermaid
94
+ sequenceDiagram
95
+ participant Customer
96
+ participant OrdersService
97
+ participant InventoryService
98
+ participant PaymentService
99
+ participant NotificationService
100
+ participant ShippingService
101
+
102
+ Customer->>OrdersService: Place Order
103
+ OrdersService->>InventoryService: Check Stock Availability
104
+ InventoryService-->>OrdersService: Stock Confirmed
105
+ OrdersService->>PaymentService: Process Payment
106
+ PaymentService-->>OrdersService: Payment Successful
107
+ OrdersService->>InventoryService: Reserve Inventory
108
+ OrdersService->>ShippingService: Create Shipping Label
109
+ ShippingService-->>OrdersService: Shipping Label Generated
110
+ OrdersService->>NotificationService: Send Order Confirmation
111
+ NotificationService-->>Customer: Order & Tracking Details
112
+ ```
113
+
114
+ ## Key Business Flows
115
+
116
+ ### Subscription Management
117
+ Our subscription service powers FlowMart's popular "Subscribe & Save" feature:
118
+
119
+ <Flow id="CancelSubscription" version="latest" includeKey={false} />
120
+
121
+ ### Payment Processing
122
+ Secure, multi-provider payment processing with fraud detection:
123
+
124
+ <Flow id="PaymentFlow" version="latest" includeKey={false} />
125
+
126
+ ## Core Services
127
+
128
+ These services form the backbone of FlowMart's e-commerce operations:
129
+
130
+ <ResourceGroupTable
131
+ id="related-resources"
132
+ limit={7}
133
+ showOwners={true}
134
+ description="Essential services powering our e-commerce platform"
135
+ />
136
+
137
+ ## Performance SLAs
138
+
139
+ - Order Processing: < 2 seconds
140
+ - Payment Processing: < 3 seconds
141
+ - Inventory Updates: Real-time
142
+ - Notification Delivery: < 30 seconds
143
+
144
+ ## Monitoring & Alerts
145
+
146
+ - Real-time order volume monitoring
147
+ - Payment gateway health checks
148
+ - Inventory level alerts
149
+ - Customer experience metrics
150
+ - System performance dashboards
151
+
152
+ <Footer />
@@ -7,35 +7,51 @@ owners:
7
7
  - full-stack
8
8
  services:
9
9
  - id: InventoryService
10
- - id: NotificationService
11
10
  - id: OrdersService
12
- - id: PaymentService
11
+ - id: NotificationService
12
+ - id: ShippingService
13
13
  badges:
14
- - content: New domain
14
+ - content: Subdomain
15
15
  backgroundColor: blue
16
16
  textColor: blue
17
+ icon: RectangleGroupIcon
18
+
19
+ resourceGroups:
20
+ - id: related-resources
21
+ title: Core resources
22
+ items:
23
+ - id: InventoryService
24
+ type: service
25
+ - id: OrdersService
26
+ type: service
27
+ - id: NotificationService
28
+ type: service
29
+ - id: ShippingService
30
+ type: service
17
31
  ---
18
32
 
19
33
  import Footer from '@catalog/components/footer.astro';
20
34
 
21
- ## Overview
22
35
 
23
- <Admonition type="warning">Please ensure all services are updated to the latest version for compatibility and performance improvements.</Admonition>
24
36
 
25
- The Orders domain handles all operations related to customer orders, from creation to fulfillment. This documentation provides an overview of the events and services involved in the Orders domain, helping developers and stakeholders understand the event-driven architecture.
37
+ :::warning
26
38
 
39
+ Please ensure all services are **updated** to the latest version for compatibility and performance improvements.
40
+ :::
41
+
42
+ The Orders domain handles all operations related to customer orders, from creation to fulfillment. This documentation provides an overview of the events and services involved in the Orders domain, helping developers and stakeholders understand the event-driven architecture
27
43
 
28
44
  <Tiles >
29
45
  <Tile icon="UserGroupIcon" href="/docs/teams/full-stack" title="Contact the team" description="Any questions? Feel free to contact the owners" />
30
- <Tile icon="RectangleGroupIcon" href={`/visualiser/domains/${frontmatter.id}/${frontmatter.version}`} title={`${frontmatter.services.length} services are in this domain`} description="This service sends messages to downstream consumers" />
46
+ <Tile icon="RectangleGroupIcon" href={`/visualiser/domains/${frontmatter.id}/${frontmatter.version}`} title={`${frontmatter.services.length} services`} description="This domain contains the following services." />
31
47
  </Tiles>
32
48
 
33
-
34
-
35
- ## Bounded context
49
+ ### Architecture for the Orders domain
36
50
 
37
51
  <NodeGraph />
38
52
 
53
+ <MessageTable format="all" limit={4} showChannels={true} title="Messages in/out of the domain" />
54
+
39
55
  ### Order example (sequence diagram)
40
56
 
41
57
  ```mermaid
@@ -67,4 +83,6 @@ Documented flow when a user makes a payment within the order domain
67
83
 
68
84
  <Flow id="PaymentFlow" version="latest" includeKey={false} />
69
85
 
86
+ <ResourceGroupTable id="related-resources" limit={4} showOwners={true} title="Core resources for the Orders domain" description="Resources that are related to the Orders domain, you may find them useful" />
87
+
70
88
  <Footer />