@eventcatalog/create-eventcatalog 4.1.1 → 4.1.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 +4 -2
- package/package.json +1 -1
- package/templates/default/domains/E-Commerce/index.mdx +1 -19
- package/templates/default/domains/E-Commerce/ubiquitous-language.mdx +87 -0
- package/templates/default/domains/Orders/entities/CartItem/index.mdx +2 -0
- package/templates/default/domains/Orders/entities/Customer/index.mdx +2 -0
- package/templates/default/domains/Orders/entities/Order/index.mdx +2 -0
- package/templates/default/domains/Orders/entities/OrderItem/index.mdx +2 -0
- package/templates/default/domains/Orders/entities/ShoppingCart/index.mdx +2 -0
- package/templates/default/domains/Orders/index.mdx +1 -0
- package/templates/default/domains/Orders/services/InventoryService/index.mdx +2 -2
- package/templates/default/domains/Orders/services/InventoryService/versioned/0.0.1/index.mdx +2 -2
- package/templates/default/domains/Orders/services/OrdersService/index.mdx +1 -1
- package/templates/default/domains/Orders/services/OrdersService/versioned/0.0.2/index.mdx +1 -1
- package/templates/default/domains/Orders/versioned/0.0.2/index.mdx +1 -0
- package/templates/default/domains/Payment/entities/Address/index.mdx +2 -0
- package/templates/default/domains/Payment/entities/Invoice/index.mdx +2 -0
- package/templates/default/domains/Payment/entities/Payment/index.mdx +2 -0
- package/templates/default/domains/Payment/entities/PaymentMethod/index.mdx +2 -0
- package/templates/default/domains/Payment/entities/Transaction/index.mdx +2 -0
- package/templates/default/domains/Payment/flows/PaymentProcessed/index.mdx +3 -3
- package/templates/default/domains/Payment/services/FraudDetectionService/events/FraudCheckCompleted/index.mdx +2 -0
- package/templates/default/domains/Payment/services/FraudDetectionService/index.mdx +1 -5
- package/templates/default/domains/Payment/services/PaymentGatewayService/commands/ProcessPayment/index.mdx +2 -0
- package/templates/default/domains/Payment/services/PaymentGatewayService/events/PaymentFailed/index.mdx +2 -0
- package/templates/default/domains/Payment/services/PaymentGatewayService/index.mdx +1 -9
- package/templates/default/domains/ProductCatalog/entities/Category/index.mdx +2 -0
- package/templates/default/domains/ProductCatalog/entities/Inventory/index.mdx +2 -0
- package/templates/default/domains/ProductCatalog/entities/Product/index.mdx +2 -0
- package/templates/default/domains/ProductCatalog/entities/Review/index.mdx +2 -0
- package/templates/default/domains/ProductCatalog/index.mdx +0 -3
- package/templates/default/domains/ProductCatalog/ubiquitous-language.mdx +88 -0
- package/templates/default/domains/Subscriptions/entities/BillingProfile/index.mdx +2 -0
- package/templates/default/domains/Subscriptions/entities/SubscriptionPeriod/index.mdx +2 -0
- package/templates/default/domains/Subscriptions/flows/CancelSubscription/index.mdx +2 -0
- package/templates/default/domains/Subscriptions/flows/CancelSubscription/versioned/0.0.1/index.mdx +2 -0
- package/templates/default/domains/Subscriptions/services/BillingService/events/SubscriptionPaymentDue/index.mdx +2 -0
- package/templates/default/domains/Subscriptions/services/BillingService/index.mdx +1 -5
- package/templates/default/domains/Subscriptions/services/PlanManagementService/index.mdx +3 -17
- package/templates/default/teams/full-stack.mdx +1 -1
- package/templates/default/teams/mobile-devs.mdx +1 -0
- package/templates/default/users/aSmith.mdx +1 -0
- package/templates/default/users/dboyne.mdx +1 -0
- package/templates/default/users/mSmith.mdx +1 -0
- package/templates/index.ts +3 -1
package/dist/index.js
CHANGED
|
@@ -29809,7 +29809,7 @@ var import_os2 = __toESM(require("os"));
|
|
|
29809
29809
|
var package_default = {
|
|
29810
29810
|
name: "@eventcatalog/create-eventcatalog",
|
|
29811
29811
|
description: "Create EventCatalog with one command",
|
|
29812
|
-
version: "4.1.
|
|
29812
|
+
version: "4.1.2",
|
|
29813
29813
|
bin: {
|
|
29814
29814
|
"create-catalog": "./dist/index.js"
|
|
29815
29815
|
},
|
|
@@ -29912,6 +29912,7 @@ var installTemplate = async ({
|
|
|
29912
29912
|
start: "eventcatalog start",
|
|
29913
29913
|
preview: "eventcatalog preview",
|
|
29914
29914
|
generate: "eventcatalog generate",
|
|
29915
|
+
lint: "eventcatalog-linter",
|
|
29915
29916
|
test: 'echo "Error: no test specified" && exit 1'
|
|
29916
29917
|
}
|
|
29917
29918
|
};
|
|
@@ -29921,7 +29922,8 @@ var installTemplate = async ({
|
|
|
29921
29922
|
);
|
|
29922
29923
|
const installFlags = { packageManager: packageManager2, isOnline };
|
|
29923
29924
|
const dependencies = [
|
|
29924
|
-
"@eventcatalog/core"
|
|
29925
|
+
"@eventcatalog/core",
|
|
29926
|
+
"@eventcatalog/linter"
|
|
29925
29927
|
];
|
|
29926
29928
|
if (template === "asyncapi") {
|
|
29927
29929
|
dependencies.push("@eventcatalog/generator-asyncapi");
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: E-Commerce
|
|
3
3
|
name: E-Commerce
|
|
4
|
+
summary: Core business domain orchestrating FlowMart's digital marketplace operations
|
|
4
5
|
version: 1.0.0
|
|
5
6
|
owners:
|
|
6
7
|
- dboyne
|
|
@@ -18,25 +19,6 @@ badges:
|
|
|
18
19
|
backgroundColor: yellow
|
|
19
20
|
textColor: yellow
|
|
20
21
|
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
22
|
---
|
|
41
23
|
|
|
42
24
|
import Footer from '@catalog/components/footer.astro';
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
dictionary:
|
|
3
|
+
- id: Marketplace
|
|
4
|
+
name: Marketplace
|
|
5
|
+
summary: "The digital platform where buyers and sellers interact to browse, purchase, and sell goods."
|
|
6
|
+
description: |
|
|
7
|
+
The marketplace is FlowMart's core digital storefront, providing the infrastructure for all commerce activity. It encompasses:
|
|
8
|
+
|
|
9
|
+
- Product discovery and search capabilities
|
|
10
|
+
- Seller listings and buyer interactions
|
|
11
|
+
- Transaction facilitation and trust mechanisms
|
|
12
|
+
- Platform-wide policies and governance
|
|
13
|
+
icon: Store
|
|
14
|
+
- id: Checkout
|
|
15
|
+
name: Checkout
|
|
16
|
+
summary: "The process by which a customer finalizes a purchase, providing payment and shipping details."
|
|
17
|
+
description: |
|
|
18
|
+
Checkout is the critical conversion step where a browsing customer becomes a paying customer. The checkout flow includes:
|
|
19
|
+
|
|
20
|
+
- Cart review and item confirmation
|
|
21
|
+
- Shipping address and method selection
|
|
22
|
+
- Payment method selection and authorization
|
|
23
|
+
- Order confirmation and receipt generation
|
|
24
|
+
|
|
25
|
+
Optimizing the checkout experience is essential for reducing cart abandonment and increasing conversion rates.
|
|
26
|
+
icon: ShoppingCart
|
|
27
|
+
- id: Cart
|
|
28
|
+
name: Cart
|
|
29
|
+
summary: "A temporary collection of items a customer intends to purchase."
|
|
30
|
+
description: |
|
|
31
|
+
The shopping cart holds selected products before checkout. Key behaviors include:
|
|
32
|
+
|
|
33
|
+
- Adding and removing items
|
|
34
|
+
- Updating item quantities
|
|
35
|
+
- Applying discount codes and promotions
|
|
36
|
+
- Calculating subtotals, taxes, and shipping estimates
|
|
37
|
+
|
|
38
|
+
Carts may persist across sessions for authenticated customers and have configurable expiration policies.
|
|
39
|
+
icon: ShoppingBag
|
|
40
|
+
- id: Catalog
|
|
41
|
+
name: Catalog
|
|
42
|
+
summary: "The complete collection of products available for sale on the marketplace."
|
|
43
|
+
icon: BookOpen
|
|
44
|
+
- id: Customer
|
|
45
|
+
name: Customer
|
|
46
|
+
summary: "An individual or organization that purchases goods or services from the marketplace."
|
|
47
|
+
description: |
|
|
48
|
+
Customers are the primary consumers in the e-commerce domain. A customer profile includes:
|
|
49
|
+
|
|
50
|
+
- Account and identity information
|
|
51
|
+
- Order history and preferences
|
|
52
|
+
- Saved addresses and payment methods
|
|
53
|
+
- Loyalty status and rewards balance
|
|
54
|
+
|
|
55
|
+
Customers may be guests (unauthenticated) or registered account holders.
|
|
56
|
+
icon: User
|
|
57
|
+
- id: Storefront
|
|
58
|
+
name: Storefront
|
|
59
|
+
summary: "The customer-facing presentation layer of the marketplace, including product pages, navigation, and branding."
|
|
60
|
+
icon: Layout
|
|
61
|
+
- id: Promotion
|
|
62
|
+
name: Promotion
|
|
63
|
+
summary: "A marketing incentive such as a discount, coupon, or special offer applied to products or orders."
|
|
64
|
+
description: |
|
|
65
|
+
Promotions drive customer engagement and sales. Common promotion types include:
|
|
66
|
+
|
|
67
|
+
- Percentage or fixed-amount discounts
|
|
68
|
+
- Buy-one-get-one (BOGO) offers
|
|
69
|
+
- Free shipping thresholds
|
|
70
|
+
- Time-limited flash sales
|
|
71
|
+
- Loyalty reward redemptions
|
|
72
|
+
|
|
73
|
+
Promotions have eligibility rules, usage limits, and validity periods.
|
|
74
|
+
icon: Percent
|
|
75
|
+
- id: Conversion
|
|
76
|
+
name: Conversion
|
|
77
|
+
summary: "The completion of a desired customer action, most commonly a purchase."
|
|
78
|
+
icon: TrendingUp
|
|
79
|
+
- id: Fulfillment
|
|
80
|
+
name: Fulfillment
|
|
81
|
+
summary: "The end-to-end process of receiving, processing, and delivering a customer's order."
|
|
82
|
+
icon: PackageCheck
|
|
83
|
+
- id: Cart Abandonment
|
|
84
|
+
name: Cart Abandonment
|
|
85
|
+
summary: "When a customer adds items to their cart but leaves the site without completing the purchase."
|
|
86
|
+
icon: ShoppingCart
|
|
87
|
+
---
|
|
@@ -31,11 +31,11 @@ receives:
|
|
|
31
31
|
- id: GetInventoryList
|
|
32
32
|
sends:
|
|
33
33
|
- id: InventoryAdjusted
|
|
34
|
-
version:
|
|
34
|
+
version: 1.0.1
|
|
35
35
|
to:
|
|
36
36
|
- id: 'inventory.{env}.events'
|
|
37
37
|
- id: OutOfStock
|
|
38
|
-
version: 0.0.
|
|
38
|
+
version: 0.0.4
|
|
39
39
|
to:
|
|
40
40
|
- id: 'inventory.{env}.events'
|
|
41
41
|
repository:
|
package/templates/default/domains/Orders/services/InventoryService/versioned/0.0.1/index.mdx
CHANGED
|
@@ -31,11 +31,11 @@ receives:
|
|
|
31
31
|
env: staging
|
|
32
32
|
sends:
|
|
33
33
|
- id: InventoryAdjusted
|
|
34
|
-
version:
|
|
34
|
+
version: 1.0.1
|
|
35
35
|
to:
|
|
36
36
|
- id: 'inventory.{env}.events'
|
|
37
37
|
- id: OutOfStock
|
|
38
|
-
version: 0.0.
|
|
38
|
+
version: 0.0.4
|
|
39
39
|
to:
|
|
40
40
|
- id: 'inventory.{env}.events'
|
|
41
41
|
repository:
|
|
@@ -3,6 +3,8 @@ id: PaymentFlow
|
|
|
3
3
|
name: Payment Flow for customers
|
|
4
4
|
version: 1.0.0
|
|
5
5
|
summary: Business flow for processing payments in an e-commerce platform
|
|
6
|
+
owners:
|
|
7
|
+
- dboyne
|
|
6
8
|
steps:
|
|
7
9
|
- id: "customer_place_order"
|
|
8
10
|
title: Customer places order
|
|
@@ -66,9 +68,7 @@ steps:
|
|
|
66
68
|
label: Retry payment process
|
|
67
69
|
- id: "payment_complete"
|
|
68
70
|
title: Payment Complete
|
|
69
|
-
|
|
70
|
-
id: PaymentComplete
|
|
71
|
-
version: 0.0.2
|
|
71
|
+
type: node
|
|
72
72
|
next_step:
|
|
73
73
|
id: "order-complete"
|
|
74
74
|
label: Order completed
|
|
@@ -21,12 +21,8 @@ receives:
|
|
|
21
21
|
sends:
|
|
22
22
|
- id: FraudCheckCompleted
|
|
23
23
|
version: 0.0.1
|
|
24
|
-
- id: FraudDetected
|
|
25
|
-
version: 0.0.1
|
|
26
|
-
- id: RiskScoreCalculated
|
|
27
|
-
version: 0.0.1
|
|
28
24
|
owners:
|
|
29
|
-
-
|
|
25
|
+
- dboyne
|
|
30
26
|
---
|
|
31
27
|
|
|
32
28
|
import Footer from '@catalog/components/footer.astro'
|
|
@@ -12,21 +12,13 @@ repository:
|
|
|
12
12
|
receives:
|
|
13
13
|
- id: ProcessPayment
|
|
14
14
|
version: 0.0.1
|
|
15
|
-
- id: RefundPayment
|
|
16
|
-
version: 0.0.1
|
|
17
15
|
- id: FraudCheckCompleted
|
|
18
16
|
version: 0.0.1
|
|
19
17
|
sends:
|
|
20
|
-
- id: PaymentAuthorized
|
|
21
|
-
version: 0.0.1
|
|
22
|
-
- id: PaymentCaptured
|
|
23
|
-
version: 0.0.1
|
|
24
18
|
- id: PaymentFailed
|
|
25
19
|
version: 0.0.1
|
|
26
|
-
- id: RefundProcessed
|
|
27
|
-
version: 0.0.1
|
|
28
20
|
owners:
|
|
29
|
-
-
|
|
21
|
+
- dboyne
|
|
30
22
|
---
|
|
31
23
|
|
|
32
24
|
import Footer from '@catalog/components/footer.astro'
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
dictionary:
|
|
3
|
+
- id: Product
|
|
4
|
+
name: Product
|
|
5
|
+
summary: "A distinct item available for sale, defined by its attributes, pricing, and descriptions."
|
|
6
|
+
description: |
|
|
7
|
+
A product is the central aggregate in the Product Catalog domain. It contains all information needed to present and sell an item:
|
|
8
|
+
|
|
9
|
+
- Title, description, and images
|
|
10
|
+
- Pricing and currency information
|
|
11
|
+
- Attributes and specifications
|
|
12
|
+
- Availability status and lifecycle state (draft, active, discontinued)
|
|
13
|
+
|
|
14
|
+
Products may have multiple variants and belong to one or more categories.
|
|
15
|
+
icon: Package
|
|
16
|
+
- id: Category
|
|
17
|
+
name: Category
|
|
18
|
+
summary: "A hierarchical grouping used to organize products for browsing and discovery."
|
|
19
|
+
description: |
|
|
20
|
+
Categories form a tree structure that helps customers navigate the catalog. Key aspects include:
|
|
21
|
+
|
|
22
|
+
- Parent-child relationships for multi-level hierarchies
|
|
23
|
+
- Category metadata and SEO attributes
|
|
24
|
+
- Display ordering and featured status
|
|
25
|
+
- Maximum depth limits enforced by business rules
|
|
26
|
+
|
|
27
|
+
Products must belong to at least one active category.
|
|
28
|
+
icon: FolderTree
|
|
29
|
+
- id: Inventory
|
|
30
|
+
name: Inventory
|
|
31
|
+
summary: "The tracked quantity of a product available for sale across warehouses and locations."
|
|
32
|
+
description: |
|
|
33
|
+
Inventory represents the stock levels for each product or variant. It involves:
|
|
34
|
+
|
|
35
|
+
- Current stock quantities per location
|
|
36
|
+
- Reorder points and safety stock thresholds
|
|
37
|
+
- Reserved and allocated quantities
|
|
38
|
+
- Stock movement history and audit trails
|
|
39
|
+
|
|
40
|
+
Inventory levels directly affect product availability on the storefront.
|
|
41
|
+
icon: Warehouse
|
|
42
|
+
- id: Review
|
|
43
|
+
name: Review
|
|
44
|
+
summary: "Customer feedback on a product, including a rating and optional written commentary."
|
|
45
|
+
description: |
|
|
46
|
+
Reviews provide social proof and help customers make purchase decisions. Review management includes:
|
|
47
|
+
|
|
48
|
+
- Star ratings and written feedback
|
|
49
|
+
- Verified purchase validation
|
|
50
|
+
- Content moderation and approval workflows
|
|
51
|
+
- Helpfulness voting and seller responses
|
|
52
|
+
|
|
53
|
+
Reviews require a verified purchase before submission.
|
|
54
|
+
icon: Star
|
|
55
|
+
- id: SKU
|
|
56
|
+
name: SKU
|
|
57
|
+
summary: "Stock Keeping Unit — a unique identifier assigned to each distinct product variant for inventory tracking."
|
|
58
|
+
icon: Tag
|
|
59
|
+
- id: Variant
|
|
60
|
+
name: Variant
|
|
61
|
+
summary: "A specific version of a product differentiated by attributes such as size, color, or material."
|
|
62
|
+
description: |
|
|
63
|
+
Variants allow a single product to be offered in multiple configurations. Each variant has:
|
|
64
|
+
|
|
65
|
+
- Its own SKU and inventory levels
|
|
66
|
+
- Specific attribute values (e.g., size: Large, color: Blue)
|
|
67
|
+
- Optional price overrides
|
|
68
|
+
- Independent availability status
|
|
69
|
+
|
|
70
|
+
Variants share the parent product's core information but differ in selectable attributes.
|
|
71
|
+
icon: Layers
|
|
72
|
+
- id: Pricing
|
|
73
|
+
name: Pricing
|
|
74
|
+
summary: "The monetary value assigned to a product or variant, including base price, sale price, and currency."
|
|
75
|
+
icon: DollarSign
|
|
76
|
+
- id: Product Lifecycle
|
|
77
|
+
name: Product Lifecycle
|
|
78
|
+
summary: "The stages a product moves through from creation to retirement: draft, active, and discontinued."
|
|
79
|
+
icon: RefreshCw
|
|
80
|
+
- id: Attribute
|
|
81
|
+
name: Attribute
|
|
82
|
+
summary: "A descriptive property of a product such as weight, dimensions, material, or brand."
|
|
83
|
+
icon: ListChecks
|
|
84
|
+
- id: Cross-Sell
|
|
85
|
+
name: Cross-Sell
|
|
86
|
+
summary: "A recommendation of related or complementary products to encourage additional purchases."
|
|
87
|
+
icon: ArrowRightLeft
|
|
88
|
+
---
|
|
@@ -19,16 +19,12 @@ receives:
|
|
|
19
19
|
parameters:
|
|
20
20
|
env: staging
|
|
21
21
|
sends:
|
|
22
|
-
- id: InvoiceGenerated
|
|
23
|
-
version: 0.0.1
|
|
24
22
|
- id: SubscriptionPaymentDue
|
|
25
23
|
version: 0.0.1
|
|
26
|
-
- id: BillingCycleCompleted
|
|
27
|
-
version: 0.0.1
|
|
28
24
|
- id: ProcessPayment
|
|
29
25
|
version: 0.0.1
|
|
30
26
|
owners:
|
|
31
|
-
-
|
|
27
|
+
- dboyne
|
|
32
28
|
---
|
|
33
29
|
|
|
34
30
|
import Footer from '@catalog/components/footer.astro'
|
|
@@ -9,24 +9,10 @@ tags:
|
|
|
9
9
|
- subscriptions
|
|
10
10
|
repository:
|
|
11
11
|
url: https://github.com/eventcatalog/plan-management-service
|
|
12
|
-
receives:
|
|
13
|
-
|
|
14
|
-
version: 0.0.1
|
|
15
|
-
- id: UpdatePlan
|
|
16
|
-
version: 0.0.1
|
|
17
|
-
- id: MigratePlan
|
|
18
|
-
version: 0.0.1
|
|
19
|
-
sends:
|
|
20
|
-
- id: PlanCreated
|
|
21
|
-
version: 0.0.1
|
|
22
|
-
- id: PlanUpdated
|
|
23
|
-
version: 0.0.1
|
|
24
|
-
- id: PlanMigrationCompleted
|
|
25
|
-
version: 0.0.1
|
|
26
|
-
- id: FeatureAccessChanged
|
|
27
|
-
version: 0.0.1
|
|
12
|
+
receives: []
|
|
13
|
+
sends: []
|
|
28
14
|
owners:
|
|
29
|
-
-
|
|
15
|
+
- dboyne
|
|
30
16
|
---
|
|
31
17
|
|
|
32
18
|
import Footer from '@catalog/components/footer.astro'
|
package/templates/index.ts
CHANGED
|
@@ -46,6 +46,7 @@ export const installTemplate = async ({
|
|
|
46
46
|
start: "eventcatalog start",
|
|
47
47
|
preview: "eventcatalog preview",
|
|
48
48
|
generate: "eventcatalog generate",
|
|
49
|
+
lint: "eventcatalog-linter",
|
|
49
50
|
test: 'echo "Error: no test specified" && exit 1',
|
|
50
51
|
}
|
|
51
52
|
};
|
|
@@ -67,7 +68,8 @@ export const installTemplate = async ({
|
|
|
67
68
|
*/
|
|
68
69
|
// const dependencies = ["@eventcatalog/eventcatalog-2"];
|
|
69
70
|
const dependencies = [
|
|
70
|
-
"@eventcatalog/core"
|
|
71
|
+
"@eventcatalog/core",
|
|
72
|
+
"@eventcatalog/linter"
|
|
71
73
|
] as any;
|
|
72
74
|
|
|
73
75
|
// if asyncapi is selected, add the asyncapi dependencies
|