AdrienTorris/awesome-blazor Resources for Blazor, a .NET web framework using C#/Razor and HTML that runs in the browser with WebAssembly.

Awesome Blazor Awesome

A collection of awesome Blazor resources.

Blazor is a .NET web framework using C#/Razor and HTML that runs in the browser with WebAssembly.

Contributions are always welcome! Please take a look at the contribution guidelines pages first. Thanks to all contributors, you’re awesome and wouldn’t be possible without you!

Contents

Introduction

What is Blazor

Blazor is a .NET web framework to build client web apps with C#.

Blazor lets you build interactive web UIs using C# instead of JavaScript. Blazor apps are composed of reusable web UI components implemented using C#, HTML, and CSS. Both client and server code is written in C#, allowing you to share code and libraries.
More information on the official Blazor website.

Get started

To get started with Blazor, follow the instructions in the Blazor Get Started documentation.

To open Blazor projects in Visual Studio, you must have Visual Studio 2019 16.3 or later and the .NET Core 3.0 SDK.

Note: the Blazor Visual Studio extension is no longer required since .NET Core 3.0 Preview 7. Uninstall the extension if you still have it installed.

General

Sample Projects

Authentication

  • BlazorWithIdentityGitHub stars A sample project showcasing a Blazor app using EF Core with Identity authentication.
  • Blazor.JWTTestGitHub stars JWT authentication for a Blazor hosted (Client/Server-side) app with API and Authentication.
  • BlazorAuthenticationSample – A sample showing some of the ASP.NET Core Blazor authentication features (also some testing…).

CMS

  • BlogCoreGitHub stars Modern CMS on Domain-driven Design and Clean Architecture patterns.
  • WordDazeGitHub stars Blogging application written using Blazor with a WebAPI backend.
  • RapidCMS – A code-first, extensible Blazor app that generates a CMS for your own database.

Games

  • AsteroidsWasmGitHub stars A mixed bag of C# projects to see if a single .NET Standard base can run across all common platforms include WebAssembly. Demo.
  • BlazorQuizGitHub stars Simple quiz using Blazor.NET and WebAssembly.
  • BlagarioGitHub stars Experimental lab to test Blazor server side as multiplayer game engine.
  • BlazorChess – Chess engine implemented with Blazor. Demo.
  • Tzaar – Implementation of the board game Tzaar with Blazor and SignalR. Demo.
  • BlazorGameSnake – 2D game snake with customizations, path finding algorithm, and sound effects using SVG. Demo.
  • Blazor20Questions – Client/Server game using Websockets (SignalR) & MongoDB API, with Docker (docker-compose).
  • BlazorDestinationGame – Quiz about places in the world. Demo.
  • BlazorDice – Roll the dice.
  • BlazorPong – Pong in Blazor server side using SignalR Core. Demo.

Machine Learning

  • Scalable sentiment analysisGitHub stars A sample ables to make sentiment analysis prediction/detection of what the user is writing in a very UI interactive app (Blazor based) in the client side and running an ML.NET model (Sentiment analysis based on binary-classification) in the server side.

ToDos

Others

Tutorials

Libraries & Extensions

Components

Reusable components like buttons, inputs, grids and more.

Tools & Utilities

Libraries and extensions for state management, cookies, local storage and other specific tools.

  • Blazor-ReduxGitHub stars Connecting a Redux state store with Blazor.
  • SignalRGitHub stars SignalR Core implementation for Blazor. It uses the JavaScript client.
  • Blazor-FluxorGitHub stars A low-boilerplate Flux/Redux state library for Blazor.
  • LoggingGitHub stars Microsoft Extension Logging implementation for Blazor.4
  • StorageGitHub stars HTML5 Storage API implementation for Microsoft Blazor.
  • Blazor-StateGitHub stars Manage client side state in Blazor using MediatR pipeline.
  • BlazorStorageGitHub stars Local and session storage support for Blazor.
  • BlazorDBGitHub stars In-memory, persisted to local storage, database for Blazor.
  • BlazorSignalRGitHub stars SignalR Core .NET client library for Blazor. It uses the C# client.
  • Blazored.LocalStorageGitHub stars A library to provide access to local storage in Blazor applications.
  • Blazor.Auth0GitHub stars The library for using Auth0 in Blazor applications.
  • NotificationsGitHub stars HTML5 Notifications API implementation for Microsoft Blazor.
  • Blazor.PolyfillGitHub stars Polyfills for Blazor (for Internet Explorer 11 support and some other browsers).
  • CssBuilderGitHub stars CssBuilder is a Builder pattern for CSS classes to be used with Razor Components.
  • Blazor I18n/Localization TextGitHub stars Localizing contents text in Blazor (Demo).
  • Blazor.PaymentsGitHub stars Blazor Web Agent port of the Web Payment API standard developed by W3C .
  • Blazored.LocalisationGitHub stars A library to provide localisation in client-side Blazor applications.
  • Blazor.GeolocationGitHub stars Blazor interop for browser Geolocation APIs.
  • Blazor Time Zone KitGitHub stars A library to provide system time zones and local time zone initialization in Blazor apps.
  • EmbeddedBlazorContentGitHub stars Library to load embedded content files (js and css) from Blazor libraries in server-side Blazor mode.
  • Blazor SVG HelperGitHub stars Create SVG elements with children (circle, rectangle, image, text, and others) and render with RenderTreeBuilder.
  • Razor components resting library – Prototype testing library that renders Razor Components as HTML and compare the result to an expected result, using the XMLDiff library and Shouldly for writing out error messages.
  • Blazor Analytics – Blazor extensions for Analytics.
  • BlazorPrettyCode – Blazor Code Component for documentation sites. Demo.
  • Blazor.EventAggregator – Lightweight Event Aggregator for Blazor (Razor Components).
  • Blazor Gamepad – Provides gamepad API access for Blazor.
  • Blazor Hotkeys – A library to provide configuration-centric keyboard shortcuts for Blazor.
  • BlazorRealm – Redux state management for Blazor.
  • Blazor.LocalFiles – Open files in your browser and load into Blazor.
  • Blazor.Sensors – Blazor interop for browser sensor APIs.
  • Rudder – Efficient state container for Blazor with concepts similar to the ones in redux, including reducers and sagas.
  • BlazorIntersectionObserver – A Blazor wrapper for the Intersection Observer API.
  • Blazor.SpeechSynthesis – A library to provide Speech Synthesis API access for Blazor.
  • Blazor BarCode – A barcode library for Blazor using barcode fonts.

Others

Videos

Articles

Podcasts

Presentations slides

Tooling

Books

E-Books

Courses

Community

Other Languages

License

CC0

To the extent possible under law, Adrien Torris has waived all copyright and related or neighboring rights to this work.