This repository serves as a practical implementation of Clean Architecture principles, focusing on simplicity and clarity. The project revolves around two main entities: User
and Post
.
- CRUD Operations : The repository implements CRUD (Create, Read, Update, Delete) operations for both User and Post entities.
- Repository Pattern : Utilizes the Repository pattern with a generic repository to abstract data access logic.
- Unit of Work Pattern : Implements the Unit of Work pattern to manage transactions across multiple repository operations.
- CQRS Pattern : Adopts the Command Query Responsibility Segregation (CQRS) pattern for separating read and write operations, enhancing scalability and maintainability.
- Mediator Pattern : Uses the Mediator pattern for simplifying communication between the presentation layer and the application layer, enhancing decoupling and testability.
- Mapster : Leverages Mapster for streamlined object mapping, enhancing efficiency and reducing boilerplate code.
- Fluent Validation : Implements Fluent Validation for validating request objects, ensuring data integrity and consistency.
Your contributions and feedback are highly appreciated! If you encounter any issues, have suggestions for improvements, or want to contribute to the project, feel free to create an issue or pull request.
To get started with the project, follow these steps:
- Clone the repository to your local machine.
- Install any necessary dependencies using the package manager specified in the project (e.g., NuGet for .NET projects).
- Configure your database connection string and any other necessary settings.
- Run the application and explore the implemented features.