compose 라이브러리 기반 DDD 아키텍처 컨벤션. Entity, Repository, Handler, Command, Query, Value Object, Domain Event, Pipeline 작성 시 참조. Use when working with compose library, creating domain modules, or implementing DDD patterns with MongoDB and dependency injection.
*Repository, *Client, *Provider, *Generator, *Converter, *Retriever 등adapter/domain/ (Entity/VO 메서드 또는 Protocol)service/domain/에 Protocol, 구현은 adapter/ 또는 service/entrypoint → service → domain ← adapter
domain_module/
├── domain/
│ ├── model.py, vo.py, command.py, query.py, event.py, enums.py
│ └── {concept}.py # Protocol/인터페이스
├── adapter/
│ ├── repository.py
│ └── {외부시스템}.py
├── service/
│ ├── command_handler.py, query_handler.py, event_handler.py
│ └── {유스케이스}.py # pipeline, generator 등
├── entrypoint/
├── schema/
└── dependency.py
User, Playlist)Address, Metadata){Entity}RepositoryCreatePlaylist)ListByStatus){Command/Query}Handler{동사}{명사}Pipeline{Entity}{과거분사} (OrderCreated)activate(), complete())create(), from_*()find_by_*(), list_by_*()domain/model.py: Entitydomain/command.py: Commandadapter/repository.py: Repositoryservice/command_handler.py: Handlerdependency.py: DI 컨테이너ApplicationContainer에 등록references/component-patterns.mdreferences/anti-patterns.md