/CleanArchitectureSample

in this project i show a sample of clean architecture with CRUD operation on user entity and used CQRS pattern

Primary LanguageC#MIT LicenseMIT

Clean Architecture Project

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.

Features Implemented

  • 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.

Contributing and Issue Reporting

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.

Getting Started

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.