Giter Site home page Giter Site logo

noumanmanan / aspnetcore-webapi-template Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sinantok/aspnetcore-webapi-template

0.0 0.0 0.0 158 KB

This project is an Web API Open-Source Boilerplate Template that includes ASP.NET Core 5, Web API standards, clean n-tier architecture, GraphQL service, and User Auditing (Identity) with a lot of best practices.

Home Page: https://marketplace.visualstudio.com/items?itemName=SinanTok.ASPNETCoreWebAPI

License: MIT License

C# 100.00%

aspnetcore-webapi-template's Introduction

ASP.NET Core Web Api Template

This project is an Web API Open-Source Boilerplate Template that includes ASP.NET Core 5, Web API standards, clean n-tier architecture, GraphQL service, and User Auditing (Identity) with a lot of best practices.

Releases

v1.0

v1.0

Follow these steps to get started with this Boilerplate Template.

Download the Extension

Make sure Visual Studio 2019 is installed on your machine with the latest SDK. Download from Visual Studio Marketplace. Install it on your machine.

Follow these Steps to get started.

enter image description here

You Solution Template is Ready!

enter image description here

Alternatively you can also clone the Repository.

  1. Clone this Repository and Extract it to a Folder.
  2. Change the Connection Strings for the "DefaultConnection" and "IdentityConnection" in the appsettings.json
  3. Run the following commands on Powershell in the Projecct's Directory.
  • dotnet restore
  • dotnet ef database update -Context IdentityContext
  • dotnet ef database update -Context ApplicationDbContext
  • dotnet run (OR) Run the Solution using Visual Studio

Swagger

You can view endpoints with swagger enter image description here

HealthCheck

You can check the status of the services with HealthCheck

Default Roles & Credentials

As soon you build and run your application, default users and roles get added to the database.

Default Roles:

  • SuperAdmin
  • Admin
  • Moderator
  • Basic

Here are the credentials for the default user.

You can use these default credentials to generate valid JWTokens at the ../api/account/authenticate endpoint.

Technologies

  • ASP.NET Core 5 WebApi
  • .NET Core 5
  • REST Standards
  • GraphQL

Features

  • Net Core
  • N-Tier Architecture
  • Restful
  • GraphQl
  • Entity Framework Core - Code First
  • Repository Pattern - Generic
  • UnitOfWork
  • Redis Caching
  • Response Wrappers
  • Microsoft Identity with JWT Authentication
  • Role based Authorization
  • Identity Seeding
  • Database Seeding
  • Custom Exception Handling Middlewares
  • Serilog
  • Automapper
  • Swagger UI
  • Healthchecks
  • SMTP / Mailkit / Sendgrid Email Service
  • Complete User Management Module (Register / Generate Token / Forgot Password / Confirmation Mail)
  • User Auditing
  • Pagination
  • Refit
  • Fluent Validation
  • Unit Test
  • .Net 5 migration

Purpose of this Project

This template project has been developed to ensure that the necessary structures are not installed over and over again when creating each new WebAPI project. In addition, the structures that should be in a WepAPI are developed with a clean architecture and up-to-date technologies.

Prerequisites

  • Visual Studio 2019 Community and above
  • .NET Core 5 SDK and above
  • Basic Understanding of Architectures and Clean Code Principles

Give a Star ⭐️

If you found this Implementation helpful or used it in your Projects, do give it a star. Thanks!

Licensing

sinantok/aspnetcore-webapi-template Project is licensed with the MIT License.

About the Author

Sinan Tok

aspnetcore-webapi-template's People

Contributors

sinantok avatar ismailermis 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.