Git Product home page Git Product logo

dotnet-template's Introduction

Dotnet Template

General info

This is a .NET Template that includes the implementation of AspNetCore Identity and Duende IdentityServer so that you can expand on it and build your own applications with it, or use it as an authorization server.

The project contains integration test to check the functionality of the implementation and a local Compose environment for developing your app in a containerised environment.

The Solution is structured using the CLEAN Architecture Pattern.

As the time goes we will add support to other things, like debugging in a containerised environment for amd64 architecture, scripts for generating the projects, solutions and certificates on Windows.

Initializing similar Solution structure without any implementation:

To initialize the same Solution structure like this one, go to the scripts where you can find the configuration, implementation details and improvements.

Tooling

The tooling is mostly focuesed on VS Code and it's integration with thees tools, because I develeoped everything with it.

Debugging

Follow the guide here to setup your environment for local development using Nginx, Docker, Compose and .NET 8

Code Formatting

Go into the console and install the csharper package globally:

dotnet tool install --global csharpier

Then install the following extension from VS Code store.

This will enable you to format your code on save. Inside the .vscode/settings.json you have this configuration which will run the command on save which formatts all .cs files:

{
  "emeraldwalk.runonsave": {
    "commands": [
      {
        "match": "\\.cs$",
        "isAsync": true,
        "cmd": "dotnet csharpier ."
      }
    ]
  }
}

CI/CD

This is implemented using GitHub Actions and the script can be found at .github/workflows/main.yml, currently it only runs the tests.

Improvements

Status of Implementation Description Issue
Creating Production Ready Dockerfile and implementation of uploading the image to Docker Hub #10
Safely manage not awaited calls #22
Global Error Handling #15
Create an Actual .NET Project Template #16
Adding External Login Provider support (Google)

dotnet-template's People

Contributors

worldwidewest 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.