Skip to content

Latest commit

 

History

History
99 lines (87 loc) · 3.51 KB

README.md

File metadata and controls

99 lines (87 loc) · 3.51 KB

Clean Template

The Clean Template Project is an open source project written in .NETCore.
The goal of this project is to apply widely used technologies and share them with communities.
If you like the project please give it a star ⭐

    CleanTemplate
    |
    ├── src
    |   ├── Core
    │   |    ├── Clean.Application
    │   |    ├── Clean.Domain
    │   |    ├── Clean.Domain.Contracts
    |   |    └── Clean.Domain.Shared
    │   ├── Infrastructure
    |   |    ├── Clean.Caching
    |   |    ├── Clean.Identity
    |   |    ├── Clean.Logging
    |   |    ├── Clean.Notification
    |   |    └── Clean.Persistence
    |   └── Presentation
    |        ├── Clean.Api
    |        ├── Clean.Mvc
    |        └── Clean.WebRazorPages
    └── test
        └── UnitTests

Features

  • Clean Architecture
  • Domain driven design (DDD) View
  • Custom Domain Events
  • CQRS
  • Entity Framework Core 7 View
  • MongoDriver
  • Sqlite, SqlServer, PostgreSQL, MySql, MongoDB
  • Generic repository pattern View
  • Unit Of Work pattern View
  • Result pattern
  • Pagination, Filtering and Sorting
  • Data Shaping View
  • Claim based authentication with Json Web Token
  • Password Hashing
  • Logging
  • Redis and InMemory Caching
  • Health Check View
  • Rate Limiting View
  • MapSter
  • FluentValidation
  • MediatR
  • Email and Notification Service
  • Unit tests
  • Asp .Net Core Web Api View
  • Asp .Net Core Mvc View
  • Asp .Net Core WebApp(Razor Pages) View

Migration Commands

Terminal

$ cd CleanTemplate/src/Infrastructure/Clean.Persistence
$ dotnet ef migrations add [MigrationName] --context [ContextName] --startup-project [Clean.Api ProjectDirectoryPath]
$ dotnet ef database update --context [ContextName] --startup-project [Clean.Api ProjectDirectoryPath]

Packages

MediatR.Extensions.Microsoft.DependencyInjection
FluentValidation.DependencyInjectionExtensions
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Proxies
Npgsql.EntityFrameworkCore.PostgreSQL
Microsoft.EntityFrameworkCore.Sqlite
Microsoft.EntityFrameworkCore.Design
Microsoft.EntityFrameworkCore.Tools
Pomelo.EntityFrameworkCore.MySql
Gleeman.EffectiveLogger.SQLite
Gleeman.EffectiveLogger
Gleeman.JwtGenerator
BCrypt.Net-Next
MongoDB.Driver
Mapster
MailKit

Api Endpoints

endpoints