Skip to content

ozgurozturk1/blazor

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Blazor Hero

BlazorHero - Clean Architecture Template

Open Sourced Solution Template For Blazor Web-Assembly 5.0 built with MudBlazor Components
Read the Documentation »

Report Bug · Request Feature

About The Project ⚡

BlazorHero is a Clean Architecture Solution Template for Blazor Webassembly 5.0 built with MudBlazor Components.

Complete Overview - Youtube Video 🆕 📈

So, here is an in-depth video that takes you through the BlazorHero Project! Do Like & Subscribe to my Youtube channel! It would be great if you could leave behind your valuable feedback in the comments section of the Video. This helps me reach a much wider audience with time :)

Watch it here!

Blazor Hero - Clean Architecture Solution Template for Blazor WebAssembly

Tech Stack 💪

New Features of BlazorHero v2.0

  • Play Notification Tone when a new Chat Message is received.
  • Auto Scroll to Last Message when a new Chat Message is received.
  • Registration Page for Unauthorized User (Currently only Admins can register new users)
  • Realtime Notifications - Dashboard Updates Realtime
  • Logout Users / Regenerate Token from Multiple Client Browsers when Permission Changes
  • FIX: Token Issue Fixed from v1.0.1
  • User Images in Chat Component
  • Chat - Integrated with Identity to support Private Chats (Will require re-migrating the DB scehmas)
  • Notifications System using SignalR
  • Document Management
  • Export to Excel
  • Audit Trails
  • FIX: Image Upload - Shift to File System from Encoded String. (REASON: Can be heavy on the db and bandwidth consumption, API responses may look huge and ugly.)
  • FIX: Code Cleanup.
  • FIX: Validations on User Registration - Show Snackbar on Exceptions / Validation Errors.
  • FIX: Remove AutoMigrations - Causes SQL Exceptions at times.

Getting Started 🦸

Important If you are already using Blazor Hero v1.x, make sure that you drop your existing database and re-update your database using the CLI as there are couple of new migrations added that may clash with your existing schema. Also, install the latest version of BlazorHero.

The easiest way to get started with Blazor Hero is to install the NuGet package and run dotnet new BlazorHero.CleanArchitecture:

  1. Install the latest .NET 5 SDK
  2. Install the latest DOTNET & EF CLI Tools by using this command dotnet tool install --global dotnet-ef
  3. Install the latest version of Visual Studio IDE 2019 (v16.8 and above) 🚀
  4. Open up Command Prompt and run dotnet new --install BlazorHero.CleanArchitecture to install the project template
  5. Create a folder for your solution and cd into it (the template will use it as project name)
  6. Run dotnet new BlazorHero.CleanArchitecture to create a new Solution with all the Awsomeness 🕶️ of BlazorHero 🦸

What to do next? Read the entire guide on my blog.

Complete Documentation 🚀

Getting started with Blazor Hero – A Clean Architecture Template built for Blazor WebAssembly using MudBlazor Components. This project will make your Blazor Learning Process much easier than you anticipate. Blazor Hero is meant to be an Enterprise Level Boilerplate, which comes free of cost, completely open sourced.

The provided documentation / guide will get you started with BlazorHero in no-time. It provides a complete walkthrough about the project with to-the-point guides and notes.

Read the Quick Start Guide

Features

All the completed and the upcoming features are mentioned in the Features.MD File

Contributing

Contributions are what make the open-source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Here are the few contributions that I would highly appreciate ;)

  • Need someone to add in the API Documentation for Swagger.
  • Need someone to implement localization throughout every Razor Component of the solution under the WASM(Client) Project. You can take the Pages/Authentication/Login.razor as the point of reference. It is as simple as adding @inject Microsoft.Extensions.Localization.IStringLocalizer<Login> localizer to every page, changing the texts to @localizer["Text Here"] and finally adding resx files to the Resources Folder as per the folder structure.
  • Need few contributors to add in various language transalations as per the implemented Location. I got time to only add a few transalations for French as of now.
  • Need a UI contributor to look at the UX/UI of the entire project
  • Need someone to buildup a cool Material Logo for BlazorHero (BH):D Do contact me on LinkedIn (https://www.linkedin.com/in/iammukeshm/).
  • And finally, Stars from everyone! :D

License

Distributed under the MIT License.

Contact

Mukesh Murugan

Support ⭐

Has this Project helped you learn something New? or Helped you at work? Do Consider Supporting. Here are a few ways by which you can support.

  • Leave a star! ⭐
  • Recommend this awesome project to your colleagues. 🥇
  • Leave your feedback / comments regarding this project in the comments section on my blog Blazor Hero Blog
  • Do consider endorsing me on LinkedIn for ASP.NET Core - Connect via LinkedIn 🦸
  • Or, If you want to support this project on the long run, consider buying me a coffee! ☕

Buy Me A Coffee

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages