Skip to content

vhsoaresr/CleanArchitecture

 
 

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.

Tech Stack 💪

Upcoming Features For 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
  • Advanced Notifications - Notifications like Facebook
  • Caching - Changes to Application & Infrastructure Layer
  • Chat - Integrated with Identity to support Private Chats (Will require re-migrating the DB scehmas)
  • Notifications System using SignalR
  • Charts
  • PDF Downloads
  • Theme Manager
  • File Upload
  • Import / Export to Excel
  • Audit Trails
  • SEO
  • 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.

Quick Preview

Youtube Preview Video Coming Soon! Meanwhile here is a quick video uploaded to my Facebook page (https://www.facebook.com/codewithmukesh/posts/269621381402304)

Getting Started 🦸

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

Clean Architecture Template for Blazor WebAssembly Built with MudBlazor Components.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 78.8%
  • HTML 20.7%
  • Other 0.5%