arch-domain-driven

Installation
SKILL.md

Purpose

This skill implements Domain-Driven Design (DDD) principles to structure code effectively. It helps generate and manage bounded contexts, aggregates, entities, value objects, and domain events, while promoting ubiquitous language for better team alignment.

When to Use

Use this skill for complex applications with rich domain logic, such as e-commerce platforms or financial systems, where clear boundaries reduce coupling. Apply it during architecture design phases to avoid monolithic codebases, especially when dealing with multiple subdomains or legacy integrations.

Key Capabilities

  • Generate bounded contexts with isolated modules for specific domains.
  • Define aggregates as clusters of entities with a single root for transaction consistency.
  • Create entities with identity and value objects for immutable data.
  • Handle domain events to trigger reactions, like publishing to event buses.
  • Enforce ubiquitous language by embedding domain terms into code and configurations.

Usage Patterns

Always begin by mapping the domain to identify bounded contexts. Use the skill to scaffold structures, then refine aggregates within contexts. For example, integrate with CI/CD by running generation commands in build scripts. Test incrementally: generate an entity, add it to an aggregate, and verify invariants. Avoid over-modeling by limiting contexts to high-cohesion areas, and use events for cross-context communication.

Related skills
Installs
21
GitHub Stars
5
First Seen
Mar 7, 2026