Skip to content

ddd capability

ddd adds Domain-Driven Design building blocks to your Go service with base types for aggregates, value objects, and domain events.

  • AggregateRoot base type
  • ValueObject base type
  • DomainEvent base types
  • Entity identity patterns

Use ddd when your service has complex business logic that benefits from explicit domain modeling. The base types enforce DDD patterns — aggregates own their consistency boundaries, value objects are immutable, and domain events make significant occurrences explicit.

Suggests: event-bus, repository, cqrs

Terminal window
verikt new my-service --language go --cap ddd
# or add to an existing service:
verikt add ddd

event-bus

In-process event bus for dispatching DomainEvents.

repository

Repository pattern for persisting aggregates.

cqrs

CQRS pattern that pairs naturally with DDD.