CleanArchitecture.WebApi Versions Save

An implementation of Clean Architecture for ASP.NET Core 3.1 WebAPI. Built with loosely coupled architecture and clean-code practices in mind.

v1.1

3 years ago
  • Refactored Service Extension at Startup.cs
  • code cleanup
  • added response for confirm-email endpoint
  • secured POST/DELETE/PUT Endpoints with JWT . Only Authorized Users can access these endpoints. To Generate a token, Register a new account at /api/account/register. Get it confirmed. Generate JWTokens at /api/account/authenticate and use the tokens to access the secured endpoints.
  • added default roles (SuperAdmin,Admin,Moderator,Basic). Found at Application/Enums/Roles
  • added default roles seeding on startup
  • added default users seeding at startup. Here are the default credentials ( [email protected] / 123Pa$$word! ) ( [email protected] / 123Pa$$word! )
  • updated nugget packages
  • added custom response for 401 & 403
  • any newly registered user will be added to the Basic User Role. All associated roles of a user will be visible on /api/Account/authenticate response.
  • added forgot-password / reset-password endpoints
  • added basic health check at /health
  • added user auditing to track changes / creation of new entities by userId

v1.0-preview

3 years ago

Features Included (as of v1.0-preview) -

  • Onion Architecture
  • CQRS with MediatR Library
  • Entity Framework Core - Code First
  • Repository Pattern - Generic
  • MediatR Pipeline Validation
  • Serilog
  • Swagger UI
  • Response Wrapper
  • Pagination
  • In-Memory Database
  • Microsoft Identity with JWT Authentication
  • Role based Authorization
  • Custom Exception Handling Middlewares
  • API Versioning
  • Fluent Validation
  • Automapper
  • SMTP / Mailkit