@eventcatalog/create-eventcatalog 3.0.13 → 3.1.3

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 (25) hide show
  1. package/README.md +0 -32
  2. package/dist/index.js +496 -422
  3. package/package.json +13 -11
  4. package/templates/default/channels/orders.{env}.events/index.mdx +2 -1
  5. package/templates/default/domains/Orders/services/InventoryService/channels/inventory-dlq/index.mdx +13 -0
  6. package/templates/default/domains/Orders/services/InventoryService/channels/inventory-queue/index.mdx +13 -0
  7. package/templates/default/domains/Orders/services/InventoryService/commands/AddInventory/index.mdx +9 -13
  8. package/templates/default/domains/Orders/services/InventoryService/commands/UpdateInventory/index.mdx +10 -14
  9. package/templates/default/domains/Orders/services/InventoryService/events/InventoryAdjusted/index.mdx +13 -15
  10. package/templates/default/domains/Orders/services/InventoryService/events/OutOfStock/index.mdx +12 -14
  11. package/templates/default/domains/Orders/services/InventoryService/index.mdx +22 -9
  12. package/templates/default/domains/Orders/services/InventoryService/versioned/0.0.1/index.mdx +21 -5
  13. package/templates/default/domains/Orders/services/NotificationService/index.mdx +13 -9
  14. package/templates/default/domains/Orders/services/OrdersService/events/OrderAmended/index.mdx +9 -13
  15. package/templates/default/domains/Orders/services/OrdersService/events/OrderCancelled/index.mdx +10 -12
  16. package/templates/default/domains/Orders/services/OrdersService/events/OrderConfirmed/index.mdx +9 -11
  17. package/templates/default/domains/Orders/services/OrdersService/index.mdx +21 -5
  18. package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/index.mdx +11 -5
  19. package/templates/default/domains/Orders/services/ShippingService/index.mdx +8 -5
  20. package/templates/default/domains/Payment/services/FraudDetectionService/index.mdx +10 -4
  21. package/templates/default/domains/Payment/services/PaymentService/events/PaymentInitiated/index.mdx +2 -6
  22. package/templates/default/domains/Payment/services/PaymentService/events/PaymentProcessed/index.mdx +2 -6
  23. package/templates/default/domains/Payment/services/PaymentService/index.mdx +11 -4
  24. package/templates/default/domains/Subscriptions/services/BillingService/index.mdx +9 -9
  25. package/templates/index.ts +0 -1
package/package.json CHANGED
@@ -1,10 +1,14 @@
1
1
  {
2
2
  "name": "@eventcatalog/create-eventcatalog",
3
3
  "description": "Create EventCatalog with one command",
4
- "version": "3.0.13",
4
+ "version": "3.1.3",
5
5
  "bin": {
6
6
  "create-catalog": "./dist/index.js"
7
7
  },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/event-catalog/create-eventcatalog.git"
11
+ },
8
12
  "files": [
9
13
  "dist",
10
14
  "templates"
@@ -12,14 +16,6 @@
12
16
  "publishConfig": {
13
17
  "access": "public"
14
18
  },
15
- "scripts": {
16
- "prepublishOnly": "npm run build",
17
- "build": "tsup index.ts --format cjs --dts",
18
- "run": "node dist/index.js",
19
- "dev": "npm run build --watch",
20
- "changeset": "changeset",
21
- "release": "changeset publish"
22
- },
23
19
  "devDependencies": {
24
20
  "@types/async-retry": "1.4.2",
25
21
  "@types/ci-info": "2.0.0",
@@ -33,7 +29,6 @@
33
29
  "@vercel/ncc": "0.34.0",
34
30
  "async-retry": "1.3.1",
35
31
  "chalk": "2.4.2",
36
- "ci-info": "watson/ci-info#f43f6a1cefff47fb361c88cf4b943fdbcaafe540",
37
32
  "commander": "2.20.0",
38
33
  "cpy": "^11.0.0",
39
34
  "cross-spawn": "6.0.5",
@@ -51,5 +46,12 @@
51
46
  "@changesets/cli": "^2.27.6",
52
47
  "axios": "^1.7.7",
53
48
  "uuid": "^10.0.0"
49
+ },
50
+ "scripts": {
51
+ "build": "tsup index.ts --format cjs --dts",
52
+ "run": "node dist/index.js",
53
+ "dev": "npm run build --watch",
54
+ "changeset": "changeset",
55
+ "release": "changeset publish"
54
56
  }
55
- }
57
+ }
@@ -9,7 +9,8 @@ owners:
9
9
  address: orders.{env}.events
10
10
  protocols:
11
11
  - kafka
12
-
12
+ routes:
13
+ - id: inventory-queue
13
14
  parameters:
14
15
  env:
15
16
  enum:
@@ -0,0 +1,13 @@
1
+ ---
2
+ id: inventory-dlq
3
+ name: Inventory DLQ
4
+ version: 0.0.1
5
+ summary: |
6
+ Dead Letter Queue for inventory events
7
+ owners:
8
+ - dboyne
9
+ ---
10
+
11
+ ## Overview
12
+
13
+ The Inventory DLQ is a dead letter queue for inventory events. It is used to store inventory events that are not yet processed.
@@ -0,0 +1,13 @@
1
+ ---
2
+ id: inventory-queue
3
+ name: Inventory Queue
4
+ version: 0.0.1
5
+ summary: |
6
+ Queue for inventory events
7
+ owners:
8
+ - dboyne
9
+ ---
10
+
11
+ ## Overview
12
+
13
+ The Inventory Queue is a queue for inventory events. It is used to store inventory events that are not yet processed.
@@ -5,20 +5,16 @@ version: 0.0.3
5
5
  summary: |
6
6
  Command that will add item to a given inventory id
7
7
  owners:
8
- - dboyne
9
- - msmith
10
- - asmith
11
- - full-stack
12
- - mobile-devs
8
+ - dboyne
9
+ - msmith
10
+ - asmith
11
+ - full-stack
12
+ - mobile-devs
13
13
  badges:
14
- - content: Recently updated!
15
- backgroundColor: green
16
- textColor: green
17
- channels:
18
- - id: inventory.{env}.events
19
- parameters:
20
- env: staging
21
- schemaPath: 'schema.json'
14
+ - content: Recently updated!
15
+ backgroundColor: green
16
+ textColor: green
17
+ schemaPath: schema.json
22
18
  ---
23
19
 
24
20
  import Footer from '@catalog/components/footer.astro';
@@ -5,20 +5,16 @@ version: 0.0.3
5
5
  summary: |
6
6
  Command that will update a given inventory item
7
7
  owners:
8
- - dboyne
9
- - msmith
10
- - asmith
11
- - full-stack
12
- - mobile-devs
8
+ - dboyne
9
+ - msmith
10
+ - asmith
11
+ - full-stack
12
+ - mobile-devs
13
13
  badges:
14
- - content: Recently updated!
15
- backgroundColor: green
16
- textColor: green
17
- channels:
18
- - id: inventory.{env}.events
19
- parameters:
20
- env: staging
21
- schemaPath: "schema.json"
14
+ - content: Recently updated!
15
+ backgroundColor: green
16
+ textColor: green
17
+ schemaPath: schema.json
22
18
  ---
23
19
 
24
20
  import Footer from '@catalog/components/footer.astro';
@@ -48,4 +44,4 @@ The UpdateInventory command is issued to update the existing stock levels of a p
48
44
 
49
45
  <Schema file="schema.json"/>
50
46
 
51
- <Footer />
47
+ <Footer />
@@ -5,21 +5,19 @@ version: 1.0.1
5
5
  summary: |
6
6
  Indicates a change in inventory level
7
7
  owners:
8
- - dboyne
9
- - msmith
10
- - asmith
11
- - full-stack
12
- - mobile-devs
13
- channels:
14
- - id: inventory.{env}.events
8
+ - dboyne
9
+ - msmith
10
+ - asmith
11
+ - full-stack
12
+ - mobile-devs
15
13
  badges:
16
- - content: Recently updated!
17
- backgroundColor: green
18
- textColor: green
19
- - content: Channel:Apache Kafka
20
- backgroundColor: yellow
21
- textColor: yellow
22
- schemaPath: 'schema.avro'
14
+ - content: Recently updated!
15
+ backgroundColor: green
16
+ textColor: green
17
+ - content: 'Channel:Apache Kafka'
18
+ backgroundColor: yellow
19
+ textColor: yellow
20
+ schemaPath: schema.avro
23
21
  ---
24
22
 
25
23
  import Footer from '@catalog/components/footer.astro';
@@ -113,4 +111,4 @@ for message in consumer:
113
111
  print(f"Received Inventory Adjusted event: {event_data}")
114
112
  ```
115
113
 
116
- <Footer />
114
+ <Footer />
@@ -5,20 +5,18 @@ version: 0.0.4
5
5
  summary: |
6
6
  Indicates inventory is out of stock
7
7
  owners:
8
- - dboyne
9
- - msmith
10
- - asmith
11
- - full-stack
12
- - mobile-devs
13
- channels:
14
- - id: inventory.{env}.events
8
+ - dboyne
9
+ - msmith
10
+ - asmith
11
+ - full-stack
12
+ - mobile-devs
15
13
  badges:
16
- - content: Recently updated!
17
- backgroundColor: green
18
- textColor: green
19
- - content: Channel:Apache Kafka
20
- backgroundColor: yellow
21
- textColor: yellow
14
+ - content: Recently updated!
15
+ backgroundColor: green
16
+ textColor: green
17
+ - content: 'Channel:Apache Kafka'
18
+ backgroundColor: yellow
19
+ textColor: yellow
22
20
  ---
23
21
 
24
22
  import Footer from '@catalog/components/footer.astro';
@@ -99,4 +97,4 @@ for message in consumer:
99
97
  print(f"Received Inventory Adjusted event: {event_data}")
100
98
  ```
101
99
 
102
- <Footer />
100
+ <Footer />
@@ -5,29 +5,42 @@ name: Inventory Service
5
5
  summary: |
6
6
  Service that handles the inventory
7
7
  owners:
8
- - dboyne
9
- - full-stack
10
- - mobile-devs
8
+ - dboyne
9
+ - full-stack
10
+ - mobile-devs
11
11
  receives:
12
12
  - id: OrderConfirmed
13
13
  version: 0.0.1
14
- - id: GetInventoryList
15
- version: 0.0.1
14
+ from:
15
+ - id: inventory-queue
16
16
  - id: OrderAmended
17
+ from:
18
+ - id: inventory-queue
17
19
  - id: UpdateInventory
18
20
  version: 0.0.3
21
+ from:
22
+ - id: 'inventory.{env}.events'
23
+ parameters:
24
+ env: staging
19
25
  - id: AddInventory
26
+ from:
27
+ - id: 'inventory.{env}.events'
28
+ parameters:
29
+ env: staging
20
30
  - id: GetInventoryStatus
31
+ - id: GetInventoryList
21
32
  sends:
22
33
  - id: InventoryAdjusted
23
34
  version: 0.0.4
35
+ to:
36
+ - id: 'inventory.{env}.events'
24
37
  - id: OutOfStock
25
38
  version: 0.0.3
26
- - id: GetOrder
27
- version: 0.0.1
39
+ to:
40
+ - id: 'inventory.{env}.events'
28
41
  repository:
29
42
  language: JavaScript
30
- url: https://github.com/event-catalog/pretend-shipping-service
43
+ url: 'https://github.com/event-catalog/pretend-shipping-service'
31
44
  ---
32
45
 
33
46
  import Footer from '@catalog/components/footer.astro';
@@ -85,4 +98,4 @@ The Inventory Service is a critical component of the system responsible for mana
85
98
  </Step>
86
99
  </Steps>
87
100
 
88
- <Footer />
101
+ <Footer />
@@ -5,26 +5,42 @@ name: Inventory Service
5
5
  summary: |
6
6
  Service that handles the inventory
7
7
  owners:
8
- - dboyne
9
- - full-stack
10
- - mobile-devs
8
+ - dboyne
9
+ - full-stack
10
+ - mobile-devs
11
11
  receives:
12
12
  - id: OrderConfirmed
13
13
  version: 0.0.1
14
+ from:
15
+ - id: 'orders.{env}.events'
14
16
  - id: OrderCancelled
15
17
  version: 0.0.1
18
+ from:
19
+ - id: 'orders.{env}.events'
16
20
  - id: OrderAmended
17
21
  version: 0.0.1
22
+ from:
23
+ - id: 'orders.{env}.events'
24
+ parameters:
25
+ env: staging
18
26
  - id: UpdateInventory
19
27
  version: 0.0.3
28
+ from:
29
+ - id: 'inventory.{env}.events'
30
+ parameters:
31
+ env: staging
20
32
  sends:
21
33
  - id: InventoryAdjusted
22
34
  version: 0.0.4
35
+ to:
36
+ - id: 'inventory.{env}.events'
23
37
  - id: OutOfStock
24
38
  version: 0.0.3
39
+ to:
40
+ - id: 'inventory.{env}.events'
25
41
  repository:
26
42
  language: JavaScript
27
- url: https://github.com/event-catalog/pretend-shipping-service
43
+ url: 'https://github.com/event-catalog/pretend-shipping-service'
28
44
  ---
29
45
 
30
46
  ## Overview
@@ -33,4 +49,4 @@ The Inventory Service is a critical component of the system responsible for mana
33
49
 
34
50
  ## Architecture diagram
35
51
 
36
- <NodeGraph title="Hello world" />
52
+ <NodeGraph title="Hello world" />
@@ -5,24 +5,28 @@ name: Notifications
5
5
  summary: |
6
6
  Service that handles orders
7
7
  owners:
8
- - dboyne
8
+ - dboyne
9
9
  receives:
10
10
  - id: InventoryAdjusted
11
- version: ">1.0.0"
11
+ version: '>1.0.0'
12
+ from:
13
+ - id: 'inventory.{env}.events'
12
14
  - id: PaymentProcessed
13
15
  version: ^1.0.0
14
- - id: GetUserNotifications
15
- version: x
16
+ from:
17
+ - id: 'payments.{env}.events'
18
+ parameters:
19
+ env: staging
16
20
  - id: GetNotificationDetails
17
- version: x
21
+ - id: GetUserNotifications
18
22
  sends:
19
23
  - id: OutOfStock
20
24
  version: latest
21
- - id: GetInventoryList
22
- version: 0.0.x
25
+ to:
26
+ - id: 'inventory.{env}.events'
23
27
  repository:
24
28
  language: JavaScript
25
- url: https://github.com/event-catalog/pretend-shipping-service
29
+ url: 'https://github.com/event-catalog/pretend-shipping-service'
26
30
  ---
27
31
 
28
32
  import Footer from '@catalog/components/footer.astro';
@@ -56,4 +60,4 @@ The Notification Service is responsible for managing and delivering notification
56
60
  </Accordion>
57
61
  </AccordionGroup>
58
62
 
59
- <Footer />
63
+ <Footer />
@@ -5,20 +5,16 @@ version: 0.0.1
5
5
  summary: |
6
6
  Indicates an order has been changed
7
7
  owners:
8
- - dboyne
9
- - msmith
8
+ - dboyne
9
+ - msmith
10
10
  badges:
11
- - content: Recently updated!
12
- backgroundColor: green
13
- textColor: green
14
- - content: Channel:Apache Kafka
15
- backgroundColor: yellow
16
- textColor: yellow
11
+ - content: Recently updated!
12
+ backgroundColor: green
13
+ textColor: green
14
+ - content: 'Channel:Apache Kafka'
15
+ backgroundColor: yellow
16
+ textColor: yellow
17
17
  schemaPath: schema.avro
18
- channels:
19
- - id: orders.{env}.events
20
- parameters:
21
- env: staging
22
18
  ---
23
19
 
24
20
  import Footer from '@catalog/components/footer.astro';
@@ -59,4 +55,4 @@ The OrderAmended event is triggered whenever an existing order is modified. This
59
55
 
60
56
  <Schema file="schema.json" />
61
57
 
62
- <Footer />
58
+ <Footer />
@@ -5,18 +5,16 @@ version: 0.0.1
5
5
  summary: |
6
6
  Indicates an order has been canceled
7
7
  owners:
8
- - dboyne
9
- - msmith
8
+ - dboyne
9
+ - msmith
10
10
  badges:
11
- - content: Recently updated!
12
- backgroundColor: green
13
- textColor: green
14
- - content: Channel:Apache Kafka
15
- backgroundColor: yellow
16
- textColor: yellow
17
- schemaPath: 'schema.json'
18
- channels:
19
- - id: orders.{env}.events
11
+ - content: Recently updated!
12
+ backgroundColor: green
13
+ textColor: green
14
+ - content: 'Channel:Apache Kafka'
15
+ backgroundColor: yellow
16
+ textColor: yellow
17
+ schemaPath: schema.json
20
18
  ---
21
19
 
22
20
  import Footer from '@catalog/components/footer.astro';
@@ -54,4 +52,4 @@ JSON schema for the event.
54
52
 
55
53
  <Schema title="JSON Schema" file="schema.json"/>
56
54
 
57
- <Footer />
55
+ <Footer />
@@ -5,18 +5,16 @@ version: 0.0.1
5
5
  summary: |
6
6
  Indicates an order has been confirmed
7
7
  owners:
8
- - dboyne
9
- - msmith
8
+ - dboyne
9
+ - msmith
10
10
  badges:
11
- - content: Recently updated!
12
- backgroundColor: green
13
- textColor: green
14
- - content: Channel:Apache Kafka
15
- backgroundColor: yellow
16
- textColor: yellow
11
+ - content: Recently updated!
12
+ backgroundColor: green
13
+ textColor: green
14
+ - content: 'Channel:Apache Kafka'
15
+ backgroundColor: yellow
16
+ textColor: yellow
17
17
  schemaPath: schema.json
18
- channels:
19
- - id: orders.{env}.events
20
18
  ---
21
19
 
22
20
  import Footer from '@catalog/components/footer.astro';
@@ -54,4 +52,4 @@ The OrderConfirmed event is triggered when an order has been successfully confir
54
52
 
55
53
  <Schema file="schema.json"/>
56
54
 
57
- <Footer />
55
+ <Footer />
@@ -5,21 +5,37 @@ name: Orders Service
5
5
  summary: |
6
6
  Service that handles orders
7
7
  owners:
8
- - dboyne
8
+ - dboyne
9
9
  receives:
10
10
  - id: InventoryAdjusted
11
11
  version: 0.0.3
12
+ from:
13
+ - id: 'inventory.{env}.events'
14
+ - id: CreateReturnLabel
15
+ - id: PlaceOrder
12
16
  - id: GetOrder
13
17
  sends:
14
18
  - id: OrderAmended
19
+ to:
20
+ - id: 'orders.{env}.events'
21
+ parameters:
22
+ env: staging
15
23
  - id: OrderCancelled
24
+ to:
25
+ - id: 'orders.{env}.events'
16
26
  - id: OrderConfirmed
17
- - id: AddInventory
27
+ to:
28
+ - id: 'orders.{env}.events'
29
+ - id: AddInventory
18
30
  version: 0.0.3
31
+ to:
32
+ - id: 'inventory.{env}.events'
33
+ parameters:
34
+ env: staging
19
35
  repository:
20
36
  language: JavaScript
21
- url: https://github.com/event-catalog/pretend-shipping-service
22
- schemaPath: "openapi.yml"
37
+ url: 'https://github.com/event-catalog/pretend-shipping-service'
38
+ schemaPath: openapi.yml
23
39
  specifications:
24
40
  asyncapiPath: order-service-asyncapi.yaml
25
41
  openapiPath: openapi.yml
@@ -42,4 +58,4 @@ The Orders Service is responsible for managing customer orders within the system
42
58
 
43
59
  <NodeGraph />
44
60
 
45
- <Footer />
61
+ <Footer />
@@ -5,17 +5,23 @@ name: Orders Service
5
5
  summary: |
6
6
  Service that handles orders
7
7
  owners:
8
- - dboyne
8
+ - dboyne
9
9
  receives:
10
10
  - id: InventoryAdjusted
11
11
  version: 0.0.3
12
+ from:
13
+ - id: 'inventory.{env}.events'
12
14
  sends:
13
- - id: AddInventory
15
+ - id: AddInventory
14
16
  version: 0.0.3
17
+ to:
18
+ - id: 'inventory.{env}.events'
19
+ parameters:
20
+ env: staging
15
21
  repository:
16
22
  language: JavaScript
17
- url: https://github.com/event-catalog/pretend-shipping-service
18
- schemaPath: "openapi.yml"
23
+ url: 'https://github.com/event-catalog/pretend-shipping-service'
24
+ schemaPath: openapi.yml
19
25
  specifications:
20
26
  asyncapiPath: order-service-asyncapi.yaml
21
27
  openapiPath: openapi.yml
@@ -31,4 +37,4 @@ The Orders Service is responsible for managing customer orders within the system
31
37
 
32
38
  <NodeGraph />
33
39
 
34
- <Footer />
40
+ <Footer />
@@ -5,13 +5,16 @@ name: Shipping Service
5
5
  summary: |
6
6
  Service that handles shipping
7
7
  owners:
8
- - dboyne
8
+ - dboyne
9
9
  receives:
10
+ - id: PaymentProcessed
11
+ from:
12
+ - id: 'payments.{env}.events'
13
+ parameters:
14
+ env: staging
10
15
  - id: CancelShipment
11
- - id: CreateReturnLabel
12
16
  - id: CreateShipment
13
17
  - id: UpdateShipmentStatus
14
- - id: PaymentProcessed
15
18
  sends:
16
19
  - id: ShipmentCreated
17
20
  - id: ReturnInitiated
@@ -21,7 +24,7 @@ sends:
21
24
  - id: DeliveryFailed
22
25
  repository:
23
26
  language: JavaScript
24
- url: https://github.com/event-catalog/pretend-shipping-service
27
+ url: 'https://github.com/event-catalog/pretend-shipping-service'
25
28
  ---
26
29
 
27
30
  import Footer from '@catalog/components/footer.astro';
@@ -46,4 +49,4 @@ The Shipping Service is responsible for managing shipping within the system. It
46
49
 
47
50
  <MessageTable format="all" limit={4} />
48
51
 
49
- <Footer />
52
+ <Footer />
@@ -4,14 +4,20 @@ version: 0.0.1
4
4
  name: Fraud Detection Service
5
5
  summary: Analyzes payment transactions for fraudulent activity and risk assessment
6
6
  repository:
7
- url: https://github.com/eventcatalog/fraud-detection-service
7
+ url: 'https://github.com/eventcatalog/fraud-detection-service'
8
8
  receives:
9
9
  - id: PaymentInitiated
10
10
  version: 0.0.1
11
+ from:
12
+ - id: 'payments.{env}.events'
13
+ parameters:
14
+ env: staging
11
15
  - id: PaymentProcessed
12
16
  version: 0.0.1
13
- - id: SubscriptionPaymentDue
14
- version: 0.0.1
17
+ from:
18
+ - id: 'payments.{env}.events'
19
+ parameters:
20
+ env: staging
15
21
  sends:
16
22
  - id: FraudCheckCompleted
17
23
  version: 0.0.1
@@ -56,4 +62,4 @@ fraud_detection:
56
62
  ml_model_version: "2.3.1"
57
63
  ```
58
64
 
59
- <Footer />
65
+ <Footer />
@@ -4,11 +4,7 @@ name: Payment Initiated
4
4
  version: 0.0.1
5
5
  summary: Event is triggered when a user initiates a payment through the Payment Service
6
6
  owners:
7
- - dboyne
8
- channels:
9
- - id: payments.{env}.events
10
- parameters:
11
- env: staging
7
+ - dboyne
12
8
  ---
13
9
 
14
10
  import Footer from '@catalog/components/footer.astro';
@@ -37,4 +33,4 @@ The Payment Initiated event is triggered when a user initiates a payment through
37
33
  - **Data Validation**: Validate all input data to prevent injection attacks or other malicious input.
38
34
  - **Sensitive Data Handling**: Avoid including sensitive information (e.g., credit card numbers) in the event payload. Use secure channels and encryption for such data.
39
35
 
40
- <Footer />
36
+ <Footer />