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.
To initialize the same Solution structure like this one, go to the scripts where you can find the configuration, implementation details and improvements.
The tooling is mostly focuesed on VS Code and it's integration with thees tools, because I develeoped everything with it.
Follow the guide here to setup your environment for local development using Nginx, Docker, Compose and .NET 8
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 ."
}
]
}
}
This is implemented using GitHub Actions and the script can be found at .github/workflows/main.yml
, currently it only runs the tests.
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) |