Giter Site home page Giter Site logo

ismailherenow / cleanarchitecture-template Goto Github PK

View Code? Open in Web Editor NEW

This project forked from omid-ahmadpour/cleanarchitecture-template

0.0 0.0 0.0 184 KB

This is a solution template for Clean Architecture and CQRS implementation with ASP.NET Core.

License: MIT License

C# 99.25% Dockerfile 0.75%

cleanarchitecture-template's Introduction

CleanArchitecture-Template

This is a solution template for Clean Architecture and CQRS implementation with ASP.NET Core

CleanArchitecture

Give a Star! ⭐

If you like or are using this project to learn or start your solution, please give it a star. Thanks!

The easiest way to create your project

1. Open CMD

2. Run

  > dotnet new --install ASPNETCleanTemplate.nuspec::3.1.0

3. Create an empty folder for your solution and cd into it.

4. Run the following code and enter your project name instead of MyNewCleanTemplate

  > dotnet new ASPNETCleanTemplate -n MyNewCleanTemplate

For Database Migration:

First:

Set default project to Persistence

Second:

Run following code in Package Manager Console

> Update-Database -Context AppDbContext

HealthCheck

use the following url to open health check admin ui

https://Url:Port/healthchecks-ui

Technologies used:

  • ASP.NET Core
  • Entity Framework Core
  • MediatR
  • Swagger
  • Redis (for distributed caching)
  • Jwt Token Authentication
  • Custom Asp.Net Identity
  • Api Versioning
  • FluentValidation
  • PolyCache (for caching)
  • Serilog
  • Elasticsearch (for writing Logs)
  • AutoMapper
  • Docker

Software Development Best Practices and Design Principles used:

  • Clean Architecture
  • Clean Code
  • CQRS
  • Authentication and Authorization
  • Distributed caching
  • Solid Principles
  • Separate ReadOnly and Write DbContext
  • Separate ReadOnly and Write Repository
  • REST API Naming Conventions
  • Use multiple environments in ASP.NET Core (Development,Production,Staging,etc)
  • Modular Design
  • Custom Exceptions
  • Custom Exception Handling
  • PipelineBehavior for Validation and Performance tracking.

Read More

  1. https://virgool.io/@ahmadpooromid/%D9%85%D9%81%D9%87%D9%88%D9%85-%D9%88-%D9%BE%DB%8C%D8%A7%D8%AF%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-scalability-%D8%AF%D8%B1-cqrs-peixkgrbdgff
  2. https://medium.com/@omid-ahmadpour/clean-architecture-template-with-net-and-its-importance-e5b3b97a6e48

cleanarchitecture-template's People

Contributors

omid-ahmadpour avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.