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!

If you need to search on this list you can try this great website: Awesome Blazor Browser. Thanks @jsakamoto for this! Source code stars last commit.

Contents

ASP.NET COMMUNITY STANDUP - ASP.NET Community Standup - Blazor Experiments + eShop Q&A (December 12, 2023).

- In this session, we will show you some experimental ideas for Blazor and .NET+WASI and answer your questions about the .NET eShop Blazor App. - Featuring: Steve Sanderson (@stevensanderson), Jon Galloway (@jongalloway), Mackinnon Buck (@MackinnonBuck). - Live on YouTube.

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.

Doing the Build a web app with Blazor learning session on Microsoft Learn can also be a good idea. Another great resource to start is the beginner serie by Jeff Fritz on Channel9 or YouTube.

General

Templates

Sample Projects

AI

Tutorials

Libraries & Extensions

Reusable components like buttons, inputs, grids and more. See also the Blazor component bundles feature comparison chart. ### Component bundles * FAST - GitHub stars last commit GitHub licence FAST is a collection of technologies built on Web Components and modern Web Standards, designed to help you efficiently tackle some of the most common challenges in website and application design and development. FAST & Blazor documentation. * Ant Design Blazor - GitHub stars last commit A set of enterprise-class UI components based on Ant Design and Blazor. (Docs as Demo). * MudBlazor - stars last commit MudBlazor is an ambitious Material Design component framework for Blazor with an emphasis on ease of use and clear structure. It is perfect for .NET developers who want to rapidly build web applications without having to struggle with CSS and Javascript. MudBlazor, being written entirely in C#, empowers them to adapt, fix or extend the framework and the multitude of examples in the documentation makes learning MudBlazor very easy. Documentation. Demo. * Blazorise - GitHub stars last commit Components for Blazor with support for Bootstrap, Bulma, AntDesign and Material CSS. (Bootstrap Demo), (Bulma Demo), (AntDesign Demo), (Material Demo). * MASA Blazor - stars last commit A set of enterprise-class UI components based on Material Design and Blazor. It’s an almost perfect copy of Vuetify, and Long-term roadmaps have been mapped out. It is powered by the MASA team and remains free and open source. Documentation. Pro Demo. * Radzen.Blazor - Native UI components for Blazor. DataGrid, DataList, Tabs, Dialog and more. (Demo). * BlazorStrap - GitHub stars last commit Material Design components for Blazor. Bootstrap 4 components for Blazor (Demo). * BootstrapBlazor - stars last commit Reusable bootstrap components for Blazor. (Docs as Demo). * BlazorBootstrap - stars last commit High-performance, lightweight, and responsive blazor bootstrap components in a single package from the developers for the developers. (Docs as Demo). * FAST Blazor - GitHub stars last commit A lightweight wrapper around Microsoft’s official FluentUI Web Components for use with .NET 6.0 Razor views & Blazor. (Samples & demo). * Element-Blazor - GitHub stars last commit A blazor component library using Element UI. API imitates Element, CSS directly uses Element’s style, HTML structure directly uses Element’s HTML structure. Blazor WebAssembly Version demo. Blazor WebAssembly Version PWA Mode demo. * BlazorFluentUI - stars last commit Simple port of FluenUI/Office Fabric React components and style to Blazor. Client-side demo (WebAssembly). Server-side demo (SignalR). * ComponentOne Blazor UI Components - External link. A fast datagrid, listview, input and other native Blazor components for server and client-side apps. * DevExpress Blazor UI Components - stars last commit A set of native UI Blazor components (including a Data Grid, Pivot Grid, Scheduler, and Charts) for both Blazor server-side and Blazor client-side platforms. * Syncfusion Blazor UI Components - GitHub stars last commit The most comprehensive native Blazor component library including Data Grid, Charts, Scheduler, Diagram and Document Editor components. (Demo). * ADMINLTE - stars last commit ADMINLTE for Blazor is a collection of reusable components, with which you can easily develop digital services as a designer or developer. Think of buttons, form elements and page templates. This project adapts ADMINLTE 3 so the components can be used from dotnet core Blazor. * Blazority - GitHub stars last commit Blazor component library based on the Clarity UI design. 30+ components including Datagrid and Tree-view (Docs & Demos). * Makani - GitHub stars last commit Lightweight, customizable, and performance oriented component library for Blazor and .NET MAUI Hybrid. Built with TailwindCSS. Demo. * Material.Blazor - stars last commit An alternative Material Theme Razor Component Library. Material.Blazor focuses sharply on giving you pure markup from Google’s material-components-web - we don’t try to sit between you and your use of Google’s CSS and SASS because they do it better than we ever could. We also have some cool “plus” components. See our demo and comprehensive documentation. * Majorsoft Blazor Components - GitHub last commit GitHub Repo stars Majorsoft Majorsoft Blazor Components is a set of UI Components and other useful Extensions for Blazor applications. All components are free and available on NuGet. The main goal of this project is to provide an easy to use, feature reach set of customizable components with other useful extensions. NuGet Demo app Docs. * MComponents - stars last commit Open Source MIT Blazor Components: Grid, Select, Wizard etc. * PanoramicData Blazor UI Components - stars last commit An open source library of Blazor components including Table, Tree, ToolBar and FileExplorer. Demo. * HAVIT Blazor - GitHub stars last commit Bootstrap 5 components + additional components built on top of Bootstrap 5 (grid, autosuggest, message-boxes, atc.). Enterprise project template with gRPC code-first client/server communication, localization and more. Interactive documentation & Demos. * Blazority - GitHub stars last commit Blazor component library based on the Clarity UI design. 30+ components including Datagrid and Tree-view (Docs & Demos). * Telerik UI for Blazor - External link (telerik.com). A native set of UI components for Blazor, including grid, charting, and calendar components. * Start Blazoring - A Blazor starter template built using your choice of Blazorise or MudBlazor, with more UI library integration coming. It offers a myriad of features such as user registration, login, password reset, two factor; user management, roles, permissioning; background workers, logging, caching, email templates, localization and many more. * Smart UI for Blazor - last commit Component library for Blazor including Grid, Kanban, Gantt, Chart, Docking, Pivot and more. Website. * TabBlazor - last commit Blazor Admin theme built on top of Tabler UI. Minimal javascript. Demo. * Blazor.Ionic - GitHub stars last commit Ionic framework integration for Blazor. * Blazor Controls Toolkit - Complete toolset for implementing commercial business applications. It includes the equivalent of all Bootstrap JavaScript components, all html5 input types with widgets fallbacks, advanced editable components like DataGrid, TreeView, DetailView, ModalDetail, DetailList. All components have default customizable templates, and support virtualizazion and Drag & Drop. Component rendering is meta-data driven, so component configuration is in part automatic, and in part can be driven with data annotations. The toolset includes also query tools, to issue complex local or remote queries, changes-tracking tools to send only the changed records to the server, advanced validation attributes, globalization tools, “Behaviors” that modify existing components, state management and save, and more. * BlazorOcticons - last commit Github Octicons created as a .razor components and available via the NuGet package. The project website is an example using the generated components. * Nevron Open Vision Components for Blazor - Paid External link Diagram, Chart, Text Editor, Gauge, Barcode, and User Interface components for Blazor. Demo. * CodeBeam.MudExtensions - stars last commit Useful third party extension components for MudBlazor, from the contributors. +20 components includes Stepper, SpeedDial, Wheel, Splitter, Animate, Popup, Material 3 Switch, Gallery, CodeInput and more. Documentation. ### Individual components ### 2D/3D Rendering engines * BabylonBlazor - GitHub stars last commit This library packages the well-known 3D library Babylon.js into a Razor component that can be used in a C# Blazor project. The library is intended to use for creation of molecules visualization and used limited API of Babylon library. Demo application which is showing different parts of library Pubchem Viewer. Show chemical information from pubchem.ncbi.nlm.nih.gov. #### API * Head Element Helper - stars last commit <Title> and <Meta> components for changing the document titile and meta elements, with server-side prerendering support for SEO/OGP. (Demo). * Blazor.Canvas - GitHub stars last commit Wrapper library around the HTML canvas API written in C# (no JS dependency) (Demo). * BlazorIntersectionObserver - last commit This is a wrapper around the Intersection Observer API. #### Charts * ChartJs.Blazor - stars Brings ChartJs charts to Blazor. * Blazor-ApexCharts - stars last commit Blazor wrapper for ApexCharts. Demo. * Plotly.Blazor - stars last commit Brings the charting library plotly.js with over 40 chart types to Blazor (Demo). * GG.Net Data Visualization - stars last commit Interactive and flexible charts for Blazor Web Apps. Taking its inspiration from the highly popular ggpplot2 R package, GG.Net provides natively rich features for your Data Analysis Workflow. Build publication quality charts with just a few lines of code. Website. * ChartJs for Blazor - stars last commit This is a NuGet package for Blazor to use ChartJs, constantly updated with new features. #### CSS * BlazorSize - stars last commit BlazorSize is a JavaScript interop library for Blazor that is used to detect the Browser’s current size, change in size, and test media queries. * BlazorAnimation - stars last commit A Blazor component based on animate.css to easly animate your content. Demo. * RazorStyle - A small utility library to allow in-component styling without duplicate <style> tags. Also supports programmatically triggered animations. #### Database * DexieNET - GitHub stars last commit DexieNET aims to be a feature complete .NET wrapper for Dexie.js the famous Javascript IndexedDB wrapper from David Fahlander. It’s designed for Blazor and includes an easy to use Razor component. #### Datagrids / tables * Grid.Blazor - stars last commit Grid component with CRUD forms for Blazor and ASP.NET MVC, supporting filtering, sorting, searching, paging, subgrids and others (Demo). * BlazorGrid - GitHub stars last commit Virtualized data grid component with lean markup, focused on displaying remote data. (Demo & documentation). #### Date & time * BlazorDateRangePicker - stars last commit A date range picker component library for Blazor. Demo. * Toast_UI.Blazor_Calendar - last commit A fully featured calendar UI component for viewing and creating events, tasks, and milestones. Month, week, and daily views. Blazor Calendar wraps the fully featured Toast UI Calendar JS library. MIT License. Sample project. #### Maps * BlazorGoogleMaps - GitHub stars last commit Blazor interop for GoogleMap library. * UnlockedData.Mapael - last commit Blazor wrapper over vector drawing/mapping library. Jquery Mapael. #### Modal, Toast & Notifications * Blazored.Modal - GitHub stars last commit A JavaScript free modal library for Blazor and Razor Components applications. * Blazored.Toast - GitHub stars last commit A JavaScript free toast library for Blazor and Razor Component applications. * Blazor.Sidepanel - GitHub stars last commit A powerful and customizable Sidepanel implementation for Blazor applications. #### Tabs * BlazorXTabs - last commit An extended tabs component library providing various tab features for Blazor. #### Testing * bUnit - a testing library for Blazor components - stars last commit A testing library for Blazor Components. You can easily define components under test in C# or Razor syntax and verify outcome using semantic HTML diffing/comparison logic. You can easily interact with and inspect components, trigger event handlers, provide cascading values, inject services, mock IJsRuntime, and perform snapshot testing. * Verify.Blazor - a snapshot testing library for Blazor components - stars last commit A snapshot testing library for Blazor Components. Supports rendering Blazor Components to a snapshot file via bunit or via raw Blazor rendering. #### Others * Stl.Fusion - GitHub stars last commit .NET Core and Blazor library that attempts to dramatically improve the way we implement real-time and high-load services by introducing a novel kind of “computed observables” - immutable, thread-safe, and most importantly, almost invisible for developers. Samples. Overview. * BlazorContextMenu - GitHub stars last commit A context menu component for Blazor (Demo). * Z.Blazor.Diagrams - stars last commit A fully customizable and extensible all-purpose diagrams library for Blazor, inspired by the popular react-diagrams library, with many additions. Demo. * Blazored.Typeahead - GitHub stars last commit Auto-complete textbox with local and remote data source, for both Client-side and Server-Side Blazor. * Blazor-DragDrop - stars last commit Easy-to-use Drag and Drop library for Blazor. * BlazorDownloadFile - stars last commit Blazor download files to the browser from c# without any JavaScript library or dependency. BlazorDownloadFile is the solution to saving files on the client-side, and is perfect for web apps that generates files on the client. However if the file is coming from the server we recommend you to first try to use Content-Disposition attachment response header as it has more cross-browser compatibility. * Excubo.Blazor.Diagrams - stars last commit Interactive diagram component (flowcharts, UML, BPMN, …), customizable and extensible according to user needs (node types, styles). Demo. * Blazor.FileSystemAccess - stars last commit A Blazor wrapper for the browser API File System Access. The API makes it possible to read and write to your local file system from the browser both files and directories. Demo. * Blorc.PatternFly - stars last commit Blazor wrappers for PatternFly. To view the latest develop branch in action, visit the demo app. * Blazor PWA Updater - stars last commit Provide “Update Now” UI and feature to your Blazor PWA that appears when the next version of one is available. * BlazorTransitionableRoute - stars last commit Allows current and previous route to exist enabling transition animations of UI/UX design systems. * Razor.SweetAlert2 - last commit Blazor component implementing the popular SweetAlert2 JavaScript Library. * BlazorMonaco - last commit Blazor component for Microsoft’s Monaco Editor which powers Visual Studio Code. (Demo). * Blazor.Grids - last commit Component library for CSS grids with extra features, such as moving and resizing interactively. Create your own dashboard with ease. (Demo). * Blazor.TreeViews - last commit Component library for tree views. (Demo). * GEmojiSharp.Blazor - last commit GitHub Emoji for Blazor (Demo). * Texnomic.Blazor.hCaptcha - last commit hCaptcha Component for Server-Side Blazor. * BlazorLocalizationSample GitHub stars last commit The default project template localized using XLocalizer with online translation and auto resource creating. * TimeCalc - last commit An app to help keep track of speed cubing averages on the fly using Blazor WebAssembly. Demo. * BlazorSliders - last commit Create multiple panels separated by sliding splitters. * Blazor SplitContainer - last commit A Blazor component to create panes separated by a slidable splitter bar. * BlazorTimeline - stars last commit Responsive, vertical timeline component. * BlazorTypewriter - last commit A typewriter effect for Blazor. * BlazorMergely - last commit An implementation of Blazor diff and merge component based on Mergely with server side support. * MetaMask.Blazor - last commit A library that provides an easy helper to use MetaMask with Blazor WebAssembly. * Blazor File Drop Zone - last commit Surround an “input type=file” element by this Blazor component to making a zone that accepts drag and drops files (Demo). * BlazorCurrentDevice - last commit Device detection for blazor using current-device.js. * BlazorStyledTextArea - last commit A textarea with style. This component essentially remains and works as a textarea but can have any of the text styled based on your application needs. Its simplicity is purposefully designed to avoid the complexities and issues that come with rich text editors. * SignaturePad - last commit A simple to use blazor component to draw custom signatures. Demo. * BlazorInputTags - last commit A simple to use blazor component for both Blazor Server and WebAssembly which adds a basic tag editor to your app. Demo. * BlazorTooltips - last commit An implementation of Bootstrap tooltips for both Blazor Server and WebAssembly. Demo. * BlazorBarcodeScanner - GitHub stars last commit Barcode Scanner component for Blazor using zxing-js Interop. Demo. ### Tools & Utilities Libraries and extensions for state management, cookies, local storage and other specific tools. * Fluxor - GitHub stars last commit Zero boilerplate Flux/Redux library for DotNet. * Blazored.LocalStorage - GitHub stars last commit A library to provide access to local storage in Blazor applications. * Blazor-State - GitHub stars last commit Manage client side state in Blazor using MediatR pipeline. * bUnit - a testing library for Blazor components - stars last commit A testing library for Blazor Components. You can easily define components under test in C# or Razor syntax and verify outcome using semantic HTML diffing/comparison logic. You can easily interact with and inspect components, trigger event handlers, provide cascading values, inject services, mock IJsRuntime, and perform snapshot testing. * Cropper.Blazor - GitHub stars last commit Cropper.Blazor is a component that wraps around Cropper.js for cropping images in Blazor. Support Blazor Server, Blazor WebAssembly, Blazor Server Hybrid with MVC and MAUI Blazor Hybrid. Demo. * TextCopy - GitHub stars last commit A cross platform package to copy text to and from the clipboard. Supports Blazor via the Clipboard Browser API. * CssBuilder - GitHub stars last commit CssBuilder is a Builder pattern for CSS classes to be used with Razor Components. * Blazor.FileSystemAccess - GitHub stars last commit A Blazor wrapper for the browser File System Access API. * Blazor.Polyfill - GitHub stars last commit Polyfills for Blazor (for Internet Explorer 11 support and some other browsers). * Blazor I18n/Localization Text - stars last commit Localizing contents text in Blazor (Demo). * BlazorGoogleMaps - stars last commit Blazor interop for GoogleMap library. * BlazorWorker - stars last commit Library for creating DotNet Web Worker threads/multithreading in Blazor. Live demo. * MvvmBlazor - stars last commit BlazorMVVM is a small framework for building Blazor and BlazorServerside apps. With it’s simple to use MVVM pattern you can boost up your development speed while minimizing the hazzle to just make it work. * Blazor.BrowserExtension - stars last commit Develop browser extensions/addons with Blazor WebAssembly. Tested with Google Chrome, Mozilla Firefox and MS Edge. * Blazor Analytics - Blazor extensions for Analytics. * Blazor PDF - stars last-commit Generate de PDF document with iTextSharp from a Blazor Server App. * BlazorRouter - stars last commit BlazorRouter is an awesome router inspired by react-router, providing declarative routing for Blazor. * DataJuggler.Blazor.FileUpload - stars last commit Wrapper for Steve Sanderson’s BlazorFileInput component. * 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 Hotkeys2 - stars last commit 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.SpeechSynthesis - last commit A library to provide Speech Synthesis API access for Blazor. * Blazor BarCode – A barcode library for Blazor using barcode fonts. * BlazorState.Redux - last commit Develop Blazor apps with Redux. * Howler.Blazor - last commit A Blazor JSInterop wrapper for Howler.js, an audio library. * jsMind.Blazor - last commit A Blazor JSInterop wrapper for jsMind, a MindMapping tool. * Blazor Highcharts - last commit A port of the popular Highcharts library. Demo. * Blazor.LazyStyleSheet - last commit Lazy loading for CSS style sheets. * Blazor.ScriptInjection - stars last commit Smart script tags in Blazor components, ideal for lazy loading of javascript files. * DnetIndexedDb - last commit Blazor Library for IndexedDB DOM API. * BlazorIndexedDbJs - last commit BlazorIndexedDbJs is a wrapper arround IndexedDB DOM API, supports Blazor WASM and Server. * Blazor-Color-Picker - last commit Opens a palette with the Material colors for Blazor application. * Blazm.Bluetooth - last commit A Blazor library for connecting to devices using Bluetooth. * WebBluetooth - last commit Blazor service for the experimental WebBluetooth functions. Based on Blazm.Bluetooth. * BlazorApplicationInsights - last commit Application Insights for Blazor web applications. * Blazor Printing - last-commit Print and save PDF documents with a native print dialog in a Blazor Server or client Application. * BlazorTemplater - last-commit Use .razor components to render HTML strings for email content. * MediaSession.Blazor - last-commit A Blazor JSInterop wrapper for Media Session API. The Media Session API provides a way to customize media notifications. (Demo). * BlazorAntivirusProtection - stars last commit Antivirus protection for Blazor Wasm projects. This package attempts to guard against false positives from antiviruses that flag Blazor Wasm as malware, until Microsoft gives us an official solution. * Phork.Blazor.Reactivity - stars last commit An unopinionated Blazor state management library that utilizes INotifyPropertyChanged and INotifyCollectionChanged .NET interfaces to automatically detect state changes in components. * CodeBeam.GoogleApis.Blazor - stars last commit An open-source utility package for GoogleApis in Blazor. Written from scratch and aims easiest of use. ### Others * Blazor Extensions Home - GitHub stars Home for Blazor Extensions. * Bolero - GitHub stars last commit Blazor for F# with hot reloaded templates, type-safe endpoints and routing, remoting, and much more. * BlazorFabric - GitHub stars last commit Blazor port of Microsoft UI Fabric with fluent design. (Demo). * BlazorWebView - GitHub stars last commit Blazor WebView control for WPF, Android, macOS, iOS. Run Blazor on .NET Core and Mono natively inside a Webview. Documentation. * BlazorLazyLoading - GitHub stars last commit Production ready lazy loading implementation. Full lazy loading support for WASM and Server (pages, components, dlls) with abstractions to implement modularization if you wish (custom endpoints, custom manifests, etc). * Fun.Blazor - stars last commit This is a project to make F# developer to write blazor easier - Use F# for Blazor, Computation expression (CE) style DSL for internal and third party blazor libraries, Dependency injection, Adaptive and Elmish models, Giraffe style routing, Type safe style. * Blazor.DownloadFileFast - stars last commit Fast download of files to the browser from Blazor without any javascript library reference or dependency. (Demo). * SpotifyService - stars last commit A high-level Spotify API library for Blazor WebAssembly projects that enables Spotify playback in the browser, manages OAuth 2.0 authorization, provides easy access to the Spotify Web API and uses IndexedDB caching. * Blazor.DynamicJavascriptRuntime.Evaluator - stars last commit Execute dynamic object expressions as Javascript in Blazor client-side apps. * Bionic - An Ionic CLI clone for Blazor projects. * EventHorizon Blazor TypeScript Interop Generator - last commit This project takes in a TypeScript type definition file and creates a .NET Core project that will work with the provided Interop abstraction project. * Generators.Blazor - last commit Generators.Blazor is a source generator for improving performance in Blazor. The project also contains analyzers to detect common issues in Blazor apps.

Source generators

Real-World applications

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.