title: DDD: Where to Place Interfaces (ports)
body: <p>I know that IRepository has to put in domain folder, but for the rest of the interfaces such as: IQueryBus, ICommandBus... should I put them in Application folder?</p>
  
  <p>I've seen a lot examples where some of them put this kind of interfaces in domain like /domain/bus/IQueryBus, /domain/bus/ICommandBus and other put them in /application/bus/IQueryBus /application/bus/ICommandBus. I'm not sure what is the best option and why. Also I've read this article <a href="https://herbertograca.com/2017/11/16/explicit-architecture-01-ddd-hexagonal-onion-clean-cqrs-how-i-put-it-all-together/" rel="nofollow noreferrer">https://herbertograca.com/2017/11/16/explicit-architecture-01-ddd-hexagonal-onion-clean-cqrs-how-i-put-it-all-together/</a> that explain: It’s important to note that the Ports (Interfaces) belong inside the business logic, while the adapters belong outside. so, if I understood very well all interfaces have to put in domain folder?</p>