Claude Skill MartBrowse skillsQuick linesLearn by videoTerminal guideWhat is a Skill?
← Back to list

Domain-Driven Design (Spring Boot 3)

A DDD skill that guides Claude in evolving aggregates, value objects and domain events safely in Spring Boot 3 codebases.

Dev & CodingAdvanced★ 304⑂ 46AI score 9/10Last updated: Sep 21, 2026

What it does

  • Enforces aggregate-root-only access and derives aggregate boundaries from invariants and contention, not arbitrary child counts.
  • Supplies immutable record value object patterns (Money, EmailAddress) with validation in compact constructors.
  • Shows domain event collection and publication, @TransactionalEventListener(AFTER_COMMIT), Spring Data @DomainEvents, plus honest caveats about durability and outbox patterns.
  • Provides composable JPA Specifications and an Anti-Corruption Layer pattern for third-party integrations.
  • Guards existing public API identifiers and persistence mappings during refactors.

Who it's for

  • Backend engineers running DDD-style Spring Boot 3 + JPA services.
  • Teams refactoring anemic entities into behavior-rich domain models.
  • Developers untangling how event publication interacts with transaction boundaries.

Examples

  1. "Add cancellation logic to the Order aggregate" → state transitions through the root with invariant checks.
  2. "Send a confirmation email when an order is placed" → a commit-bound listener plus outbox guidance for guaranteed delivery.
  3. "Integrate a third-party payment SDK" → a PaymentPort + adapter ACL so external models never reach the domain.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/rrezartprebreza/spring-boot-skills/HEAD/skills/spring-boot-3/domain-driven-design/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
↓ Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the skills/spring-boot-3/domain-driven-design folder from the GitHub repo rrezartprebreza/spring-boot-skills into my ~/.claude/skills/domain-driven-design/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/rrezartprebreza/spring-boot-skills.git /tmp/spring-boot-skills && mkdir -p ~/.claude/skills && cp -r /tmp/spring-boot-skills/skills/spring-boot-3/domain-driven-design ~/.claude/skills/

⚠ This is a third-party skill. Check the source repository before installing.

  1. Open a terminal.
  2. Clone the repo: git clone https://github.com/rrezartprebreza/spring-boot-skills.git
  3. Create the skills folder: mkdir -p ~/.claude/skills
  4. Copy the skill: cp -r spring-boot-skills/skills/spring-boot-3/domain-driven-design ~/.claude/skills/
  5. (Optional) Also copy transactional-patterns, event-driven-messaging and spring-modulith so the cross-links resolve.
  6. Restart Claude Code and ask something like "Refactor this Order aggregate following DDD rules" to trigger the skill.