Skip to content

A .NET 9 Clean Architecture reference implementation demonstrating best practices in building scalable, maintainable web APIs using modern software design principles

Notifications You must be signed in to change notification settings

a-kostyuchenko/clean-architecture

Repository files navigation

Clean Architecture API

A comprehensive .NET 9 Web API project showcasing Clean Architecture principles and best practices.

🌟 Project Overview

This project demonstrates a robust implementation of Clean Architecture, providing a scalable and maintainable solution for building modern web APIs. It leverages cutting-edge technologies and design patterns to create a modular, testable, and extensible application.

🛠 Technologies Used

  • Language & Framework: C#, .NET 9
  • ORM: Entity Framework Core
  • Architectural Patterns:
    • Clean Architecture
    • CQRS
  • Utilities:
    • MediatR
    • Mapster
    • Serilog
  • Databases:
    • PostgreSQL (primary database)
    • Redis (caching)
  • Logging & Monitoring: Seq
  • Containerization: Docker

📂 Project Structure

The solution is organized into clear, separated layers:

  • src/Domain: Core domain entities and business logic
  • src/Application: Application services, commands, and queries
  • src/Infrastructure: Data access, external service integrations
  • src/Web.API: RESTful API endpoints
  • src/SharedKernel: Cross-cutting concerns and shared utilities

🚀 Getting Started

Prerequisites

Ensure you have the following installed:

Installation & Setup

  1. Clone the Repository

    git clone https://github.com/a-kostyuchenko/clean-architecture.git
    cd clean-architecture
  2. Build and Run with Docker

    docker-compose up --build
  3. API Access

    • HTTP: http://localhost:7070
    • HTTPS: https://localhost:7071

🤝 Contributing

Contributions are welcome! Feel free to submit a pull request or open an issue.

🌐 Contact

Email - [email protected]

About

A .NET 9 Clean Architecture reference implementation demonstrating best practices in building scalable, maintainable web APIs using modern software design principles

Topics

Resources

Stars

Watchers

Forks