/CleanArchitectureWithBlazorServer

This is a repository for creating a Blazor Server dashboard application following the principles of Clean Architecture

Primary LanguageC#MIT LicenseMIT

Clean Architecture With Blazor Server

This is a repository for creating a Blazor Server application following the principles of Clean Architecture. It has a nice user interface, and an efficient code generator that allows you to quickly build amazing web application with .net Blazor technology.

Live Demo

Screenshots and video

Everything Is AWESOME

Development Enviroment

  • Microsoft Visual Studio Community 2022 (64-bit)
  • Docker
  • .NET 7.0
  • Unit Test

image

Supported Databases

  • PostgreSQL (Provider Name: postgresql)
  • Microsoft SQL Server (Provider Name: mssql)
  • SQLite (Provider Name: sqlite)

How to select a specific Database?

  1. Open the appsettings.json file located in the src directory of the Blazor.Server.UI project.
  2. Change the setting DBProvider to the desired provider name (See Supported Databases).
  3. Change the ConnectionString to a connection string, which works for your selected database provider.

Docker compose https deployment

  • Create self-signed development certificates for the project
    • cmd: dotnet dev-certs https -ep $env:USERPROFILE\.aspnet\https\Blazor.Server.UI.pfx -p Password@123
    • cmd: dotnet dev-certs https --trust
  • Manage User secrets to save password
    • cmd: dotnet user-secrets init
    • cmd: dotnet user-secrets -p Blazor.Server.UI.csproj set "Kestrel:Certificates:Development:Password" "Password@123"

Code Generator Extension Plugin for visual studio.net 2022

2022.mp4

How to build solution templates

  • run CLI: dotnet new --install sayedha.templates

  • create solution/project template

    • create .template.config
    • run CLI: dotnet new templatejson
    • edit templatejson file
  • install the project template

    • run CLI: dotnet new --install ./
    • run CLI: dotnet new --list
  • create a solution with the template

    • run CLI: dotnet new ca-blazor-sln

    image

Why I choose Blazor Server

  • I hate switching between C# and JavaScript at the same time in order to develop a project, which is why I opted for Blazor Server.

Characteristic

  • Avoid repeating work

  • Focus on story implementation

  • Integration Hangfire dasboard

  • Implementation OCR image recognition

    image

  • org chart

    image

About

Coming up.

License

MIT License