One-click install
npx skills add https://github.com/hgflima/loopy --skill domain-driven-design-hgflima
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain-driven-design
Source: https://github.com/hgflima/loopy/tree/main/.claude/skills/domain-driven-design
Command: npx skills add https://github.com/hgflima/loopy --skill domain-driven-design-hgflima

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires ddd, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill helps software developers model their applications using Domain-Driven Design (DDD) principles, ensuring code reflects business domains accurately and consistently.

Core Features & Use Cases

  • Ubiquitous Language: Encourage a shared vocabulary between developers and domain experts.
  • Bounded Contexts: Establish clear boundaries for domain models and manage relationships between them.
  • Entities, Value Objects, and Aggregates: Create a robust domain model structure.
  • Domain Events: Implement event-driven communication between aggregates.
  • Repositories and Factories: Separate domain logic from persistence and object creation.
  • Strategic Design: Identify and focus on the core domain for competitive advantage.
  • Use Case: A developer working on an e-commerce platform can use this Skill to ensure the shopping cart's model aligns with the business's domain requirements.

Quick Start

To initiate the domain-driven design framework, use the command: domain-driven-design --apply <domain-name>

Frequently Asked Questions about domain-driven-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I align my software code with business domains using DDD?

You implement domain-driven design by structuring your domain model with entities, value objects, and aggregates, establishing clear bounded contexts to separate domain logic and maintain model boundaries.

What is a bounded context and when do I need it for domain modeling?

A bounded context establishes clear boundaries for a domain model to manage relationships and prevent ambiguity. You need it when modeling complex software to maintain a consistent ubiquitous language within specific business domains.

How do I model aggregates, entities, and value objects in domain-driven design?

Model aggregates, entities, and value objects to create a robust domain structure where aggregates enforce transactional consistency, entities track identity, and value objects represent domain attributes without identity.

Can I use domain events for communication between aggregates in DDD?

Yes, you can implement domain events to enable event-driven communication between aggregates, ensuring aggregates remain independent while still triggering necessary side effects and domain logic updates across bounded contexts.

Do I need prior knowledge of strategic design to apply DDD principles?

Yes, applying DDD principles requires prerequisite knowledge of domain modeling, bounded contexts, and DDD practices to effectively identify the core domain and leverage strategic design for competitive advantage.