Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/curiousdrive/blazingchat

BlazingChat is a Blazor WebAssembly app developed by CuriousDrive for the community. This is a sample application for developers who are just getting started with Blazor.
https://github.com/curiousdrive/blazingchat

asp-net-core blazor csharp tutorial webassembly

Last synced: about 1 month ago
JSON representation

BlazingChat is a Blazor WebAssembly app developed by CuriousDrive for the community. This is a sample application for developers who are just getting started with Blazor.

Awesome Lists containing this project

README

        

## What is BlazingChat?

BlazingChat is a Blazor WebAssembly app developed by `CuriousDrive` for the community.
This is a sample application for developers who are just getting started with Blazor.

BlazingChat has code samples for Authentication, Logging, Virtualization ... and much more. The app is open source and running in production.

Check it out here [https://www.blazingchat.com](https://www.blazingchat.com)

![Demo_App](https://github.com/CuriousDrive/BlazingChat/blob/main/Source%20Code%20By%20Episodes/Documents/Gifs/Intro2.gif)

## How to run it?

- Install [Visual Studio 2022](https://visualstudio.microsoft.com/vs/).
- Clone repo `https://github.com/CuriousDrive/BlazingChat.git` on your machine.
- Open solution file `src/BlazingChat.sln`
- Make sure to select `WebAPI` & `Client` to run as multiple startup projects

![Multiple-StartUp-Projects](https://github.com/CuriousDrive/BlazingChat/blob/main/Source%20Code%20By%20Episodes/Documents/Images/MultipleStartUpProjects.JPG)
- Press `Cntrl + F5` to run the app. It should open the app in your default browser.
- Click on login. You should get logged in with email address `[email protected]`
- Or you can login with your Twitter or Facebook
- Congratulations!!! you are using BlazingChat.

## How does it work?

The front-end is made using Blazor WebAssembly and the back-end is made using ASP.NET Core Web API + Entity Framework Core. SQLite is used to store the data. You can run this app on Windows, Mac or Linux operating systems. The repo is maintained episode by episode so that you can go back to particular episode and the code related to it.

## How can I build it from scratch?

The best part about BlazingChat app is that it's been documented while it was getting built.

Please check out the videos below, if you want to learn how to build your own Blazor WebAssembly app from scratch.
| Topic | Video Recording |
| ----- | ---- |
| Introduction/Full Course/Workshop - EP01 | https://youtu.be/v6Mt8HKAWa0 |
| Hello World from Windows/Linux - EP02 | https://youtu.be/BajljUky-KA |
| Project Structure/Template - EP03 | https://youtu.be/S-skkhzcMmo |
| Routing, NavigationManager & AdditionalAssemblies : EP04 | https://youtu.be/86vyb4vDGTk |
| Debugging in VS Code, Chrome and Visual Studio : EP05 | https://youtu.be/4c2vli5567A |
| Entity Framework Core - EP06 | https://youtu.be/rACHqnkaORA |
| MVVM Architecture - EP07 | https://youtu.be/dvgReCfPsvg |
| Dependency Injection in MVVM - EP08 | https://youtu.be/bxpSa0ZmwtY |
| Using HttpClient in MVVM - EP09 | https://youtu.be/To-GSKOac10 |
| Open-source Project - EP10 | https://youtu.be/6T-l-lt28rs |
| Custom Authentication - EP11 | https://youtu.be/B9jKf-Dn0Yg |
| AuthenticationState - EP12 | https://youtu.be/N8YoJRV19rw |
| Twitter Authentication/Login - EP13 | https://youtu.be/TZSwbey58CM |
| Facebook Authentication - EP14 | https://youtu.be/AoN-CzWJwa4 |
| Google Authentication - EP15 | https://youtu.be/4lYPhionIEo |
| Migrating from 3.1 to .NET 5 - EP16 | https://youtu.be/kcihC-h69fE |
| CSS Isolation - EP17 | https://youtu.be/0EqMxSm_49k |
| Uploading Files - EP18 | https://youtu.be/sF6yhn2UJNs |
| Downloading Files : EP19 | https://youtu.be/qUbbtcZZqaI |
| Virtualize Component - EP20 | https://youtu.be/UtmAlX6U29k |
| JavaScript Isolation - EP21 | https://youtu.be/tbNgLNZnNWM |
| Lazy-loading Assemblies - EP22 | https://youtu.be/e_22VhPQJj0 |
| Deploy to IIS(Internet Information System) - EP23 | https://youtu.be/vV0zn91OZfc |
| Creating Chat Application Using SignalR - EP24 | https://youtu.be/5VSUX6w5P8g |
| SignalR - Sending Messages to Specific Clients - EP25 | https://youtu.be/SeQvP8_dVng |
| Cookie Expiration & API Authorization - EP26 | https://youtu.be/QOFwpmjEW7g |
| Logging to Database using Custom Logger Provider - EP27 | https://youtu.be/SmFsQJBbsO0 |
| Global Exception Handling using CascadingValue - EP28 | https://youtu.be/mxOYvu2MWFo |
| "Remember me" using Cookie Authentication - EP30 | https://youtu.be/220FQbMKyrg |
| Dark/Light Theme Switch - EP31 | https://youtu.be/5qRaUviEYIw |
| JWT Authorization - EP32 | https://youtu.be/bu6F4oeYdzA |
| JWT For Facebook Authentication - EP33 | https://youtu.be/bBvDQ9z1Xdw |
| Authorization using CascadingAuthenticationState & JWT - EP34 | https://youtu.be/uthjcpJHzKo |
| Deploying Blazor + WebAPI using GitHub Actions(CI/CD) - EP35 | https://youtu.be/m7DqtL0WIV0 |
| Upgrade NET5 to NET6 in 8 minutes - EP36 | https://youtu.be/qNPKnrSEr-Y |
| .NET6 : Program.cs Changes - EP37| https://youtu.be/iBBU0KC8EKw |

## Have any other questions?

If you have any questions on how this project is setup then you can reach out to us on below handles.

https://twitter.com/curious_drive

https://www.facebook.com/curiousdrive/

https://www.youtube.com/c/curiousdrive

Let us know how it goes.