Sample project using architecture discussed in this Pluralsight course..
Separated layers: API, Application, Domain, Infrastructure.
Using CQRS with MediatR.
This is an abstraction heavy approach and can be cut down to the needs of the application. The clean communication from the API to the application, exception handling and infrastructure injection would be great for any project, though abstracting data access into repositories may be an over-abstraction and create more work depending on the projects scale.
