# abp-ddd

> Claude/Codex skill by [@abpframework](https://omgskills.com/library/abpframework/index.md) · 14k stars · Updated 2026-11-01

ABP DDD patterns - Entities, Aggregate Roots, value objects, Repositories, Domain Services, Domain Events, Specifications. Use when designing domain layer, creating entities, repositories, or domain services in ABP projects.

Tags: abp, angular, architecture, aspnet, aspnet-core, aspnetcore, blazor, c-sharp, csharp, domain-driven-design, dotnet-core, framework, modular-monolith, multi-tenancy, saas

## Install

```sh
git clone https://github.com/abpframework/abp /tmp/abp && ln -s /tmp/abp/.claude/skills/abp-ddd ~/.claude/skills/abp-ddd
```

## From README

ABP DDD Patterns Docs: https://abp.io/docs/latest/framework/architecture/domain-driven-design Anti-Patterns to Avoid Anemic entities: public setters with no behavior — use private setters + methods that enforce invariants Repository for child entities: only aggregate roots get repositories — access child entities through their root Generating GUID in entity constructor: use IGuidGenerator from outside and pass id parameter Navigation properties to other aggregates: reference by Id only, never add full navigation properties across aggregates Domain service depending on current user: accept values from the application layer instead Rich Domain Model vs Anemic Domain Model ABP promotes Rich Domain Model pattern where entities contain both data AND behavior: | Anemic (Anti-pattern) | Rich (Recommended) | |----------------------|-------------------| | Entity = data only | Entity = data + behavior | | Logic in services | Logic in entity methods | | Public setters | Private setters with...

## Links

- HTML page: https://omgskills.com/library/abpframework/abp/dot-claude/skills/abp-ddd/
- GitHub: https://github.com/abpframework/abp
- Author: [@abpframework](https://omgskills.com/library/abpframework/index.md)

## More from this repo

- [abp-angular](https://omgskills.com/library/abpframework/abp/dot-claude/skills/abp-angular/index.md) — ABP Angular UI patterns - generate-proxy, ListService, PermissionGuard, abpLocalization pipe, ConfirmationService,...
   - [@abpframework](https://omgskills.com/library/abpframework/index.md) · 14k stars
- [abp-app-nolayers](https://omgskills.com/library/abpframework/abp/dot-claude/skills/abp-app-nolayers/index.md) — ABP Single-Layer (No-Layers / nolayers) application template - single project structure, feature-based file...
   - [@abpframework](https://omgskills.com/library/abpframework/index.md) · 14k stars
- [abp-application-layer](https://omgskills.com/library/abpframework/abp/dot-claude/skills/abp-application-layer/index.md) — ABP Application Services, DTOs, CRUD service, object mapping (Mapperly/AutoMapper), validation, error handling.
   - [@abpframework](https://omgskills.com/library/abpframework/index.md) · 14k stars
