Skip to content

Event Flow Map

The event flow map shows how domain events flow between services — who publishes, who consumes, and the events in between.

The event flow map is driven by models/event-mapping.yaml, which bridges registry types to semantic event-flow roles:

service_type: software_subsystem # what acts as a "service"
event_type: domain_event # what acts as an "event"
publishes_field: published_by_api_endpoints
consumes_field: consumed_by_api_endpoints

The loader follows these paths at build time:

  1. Find all domain events in the domain
  2. Follow published_by_api_endpoints to discover publishers
  3. Follow consumed_by_api_endpoints to discover consumers
  4. Auto-traverse intermediate hops (event -> API endpoint -> subsystem) via BFS

The graph is arranged left-to-right in three columns:

Publishers -> Events -> Consumers
(services) (domain (services)
events)

Cross-domain services (consuming events from another domain) are visually marked.

FeatureDescription
Animated edgesFlowing dots along publish/consume edges show data flow direction
Color codingBlue edges for “publishes”, green edges for “consumes”
Edge labelsEach edge shows “PUBLISHES” or “CONSUMES” in a styled badge
Cross-domain flagServices from other domains get a special indicator
PNG exportDownload the graph as an image

The bottom-right legend shows:

  • Publish and consume edge styles
  • Event node appearance
  • Service node appearance

To populate the event flow map, create domain event Markdown files with publish/consume connections:

---
type: domain-event
name: Order Placed
domain: Order Management
status: active
event_format: CloudEvents/JSON
published_by_api_endpoints:
- order-create-endpoint
consumed_by_api_endpoints:
- billing-invoice-trigger
- analytics-event-ingest
---

The more connections your events have, the richer the event flow visualization becomes. Cross-domain consumers make the graph particularly interesting.