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

Micro Frontends with Blazor, in The .NET Docs Show (August 30, 2021).

- Micro Frontends with Blazor, in The .NET Docs Show. - Join Florian Rappl @FlorianRappl , along with hosts Luis Quintanilla, Cam Soper, Maira Wenzel for a captivating conversation about .NET. - dotnetdocs.dev.

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

Authentication

Tutorials

Libraries & Extensions

Reusable components like buttons, inputs, grids and more. See also the Blazor component bundles feature comparison chart. ### Component bundles * Ant Design Blazor - GitHub stars last commit A set of enterprise-class UI components based on Ant Design and Blazor. (Docs as Demo). * MatBlazor - GitHub stars last commit Material Design components for Blazor. (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). * 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. * 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). * 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). * BootstrapBlazor - stars last commit Reusable bootstrap components for Blazor. (Docs as Demo). * Skclusive.Material.Components - Material Design components for Blazor (Dashboard Demo), (Components). * 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. * BlazorWebFormsComponents - stars last commit A collection of Blazor components that emulate the web forms components of the same name. * BootstrapBalzor - stars last commit Reusable bootstrap components for Blazor. (Docs as Demo). * 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). * LoreSoft.Blazor.Controls - Auto-complete (Typeahead) textbox with local and remote data source, for both Client-side and Server-Side Blazor. Also has DateTimePicker and ToggleSwitch. Demo. * Material.Blazor - 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. * MComponents - stars last commit Open Source MIT Blazor Components: Grid, Select, Wizard etc. * PanoramicData Blazor UI Components - An open source library of Blazor components including Table, Tree, ToolBar and FileExplorer. Demo. * 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. * jQWidgets Blazor UI Components - last commit Feature-complete UI components including DataGrid, Scheduler, Charting, Pivot and more. Website. * 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 - 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. ### Individual components #### API * Canvas - stars last commit HTML5 Canvas API implementation for Microsoft Blazor. * Head Element Helper - <Title> and <Meta> components for changing the document titile and meta elements, with server-side prerendering support for SEO/OGP. (Demo). * BrowserInterop - GitHub stars last commit This library provides access to browser API in a Blazor App. * Blazor.Canvas - Wrapper library around the HTML canvas API written in C# (no JS dependency) (Demo). * Sve-Blazor-InfiniteScroll - last commit Simplistic implementation of an infinite scroll component for Blazor. * BlazorGooglePay - last commit Blazor wrapper around Js Google Pay, library based on BrowserInterop. * BlazorDependencies - last commit Js library that helps maintain dependencies of one Razor Class Library to another one without manually adding scripts and css-styles for each library. * BlazorIntersectionObserver - last commit This is a wrapper around the Intersection Observer API. #### Charts * ChartJs.Blazor - Brings ChartJs charts to Blazor. * Blazor-Charts - GitHub stars last commit SVG charts for Blazor. * GG.Net Data Visualization - 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. * Blazor-Sparkline - last commit Sparkline Charts for Blazor using Fonts. * Blazor-ApexCharts - last commit Blazor wrapper for ApexCharts. Demo. * Plotly.Blazor - Brings the charting library plotly.js with over 40 chart types to Blazor (Demo). #### CSS * BlazorStyled - stars last commit CSS in Blazor Components (Demo). * 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. * BlazorCss - last commit CSS Helper for BlazorStyled which provides auto complete CSS styles. * BlazorCssGrid - last commit Css Helper for defining Grid SPA layouts in BlazorStyled. #### Datagrids / tables * Grid.Blazor - 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). * Blazor.FlexGrid - GridView component for Blazor. * Sve-Blazor-DataTable - stars last commit Blazor DataTable component with support for client/server side paging, filtering and sorting, build on top of bootstrap 4. * Table.Net - last commit Interactive and flexible Data Tables for Blazor Web Apps. * BlazorTable - stars last commit A Table Control for Blazor with sorting, paging, filtering and more (Demo). * WpfGridLayout.Blazor - Provide a simple way to create a grid layout like WPF in Blazor. #### Date & time * BlazorDateRangePicker - stars last commit A date range picker component library for Blazor. Demo. * NodaTimePicker - GitHub stars last commit A Date/Time picker component library for Blazor using NodaTime. Demo. * FlatpickrBlazor - last commit Flatpickr Blazor interop.Demo. * Toast_UI.Blazor_Calendar - 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. * Blazor Time - stars last commit Display dates and times in the users local time. Demo. #### Maps * BlazorGoogleMaps - GitHub stars last commit Blazor interop for GoogleMap library. #### Markdowns * RazorComponents.Markdown - A razor component for Markdown rendering which supports LaTeX, Mermaid diagram, code highlighting and extensions based on Markdig. * Blazor Markdown - last_commit A Blazor Markdown component that enables you to include Markdown files in your server-side Blazor apps. #### 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. #### 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. #### Others * Stl.Fusion - .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). * BlazorInputFile - GitHub stars last commit A file input component for Blazor applications, by Steve Sanderson. * 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. * Blazored.Menu - stars last commit A JavaScript free menu library for Blazor and Razor Components applications. * Blazor LoadingBar - Loading bar UI for Client-Side Blazor application. * Z.Blazor.Diagrams - A fully customizable and extensible all-purpose diagrams library for Blazor, inspired by the popular react-diagrams library, with many additions. Demo. * Excubo.Blazor.Diagrams - Interactive diagram component (flowcharts, UML, BPMN, …), customizable and extensible according to user needs (node types, styles). Demo. * BlazorDownloadFile - stars last commit Blazor download files to the browser from c# without any JavaScript library or dependency. * Blazor.SignaturePad - A Blazor component library that utilizes Szymon Nowak’s javascript library Signature Pad to implement smooth signature drawing on a HTML5 canvas. * Blorc.PatternFly - Blazor wrappers for PatternFly. To view the latest develop branch in action, visit the demo app. * BlazorTransitionableRoute - stars last commit Allows current and previous route to exist enabling transition animations of UI/UX design systems. * Blazor-Dom-Confetti - last commit Celebrate success with dom 🎉confetti🎉 on Blazor projects. Two versions, dom-confetti wrapper and native blazor 100% JS free. * TwitterShareButton - A Tweet Button component for Blazor. * Blazor.LoadingIndicator - Simple to use loading indicator helper library. * BlazorTypography - last commit A powerful toolkit for building websites with beautiful design (Demo). * Razor.SweetAlert2 - 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 - Component library for CSS grids with extra features, such as moving and resizing interactively. Create your own dashboard with ease. (Demo). * Blazor.TreeViews - Component library for tree views. (Demo). * DnetOverlay - last commit Agular CDK Overlay implementation for Blazor. * GEmojiSharp.Blazor - last commit GitHub Emoji for Blazor (Demo). * Texnomic.Blazor.hCaptcha - last commit hCaptcha Component for Server-Side Blazor. * BlazorDialog - last commit Dialog component as a service for Blazor. Demo. * BlazorWheelZoom - last commit Zoom and move image with Blazor using mouse wheel and mouse drag - minimal javascript. Demo. * AdvancedBlazorSelect2 - Simple wrapper for Select2 with full support of databases and custom web APIs. * BlazorLocalizationSample 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. * 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. ### 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. * SignalR - GitHub stars last commit SignalR Core implementation for Blazor. It uses the JavaScript client. * Blazored.LocalStorage - GitHub stars last commit A library to provide access to local storage in Blazor applications. * Storage - GitHub stars last commit HTML5 Storage API implementation for Microsoft Blazor. * Blazor-State - GitHub stars last commit Manage client side state in Blazor using MediatR pipeline. * bUnit - a testing library for Blazor components - GitHub 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. * Logging - GitHub stars last commit Microsoft Extension Logging implementation for Blazor. * 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. * Notifications - GitHub stars last commit HTML5 Notifications API implementation for Microsoft Blazor. * Blazor.Polyfill - Polyfills for Blazor (for Internet Explorer 11 support and some other browsers). * Blazor I18n/Localization Text - Localizing contents text in Blazor (Demo). * BlazorGoogleMaps - stars last commit Blazor interop for GoogleMap library. * 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. * Cortex.Net - State management like MobX for .NET and Blazor. Documentation. * Blazor Analytics - Blazor extensions for Analytics. * BlazorWorker - stars last commit Library for creating DotNet Web Worker threads/multithreading in Blazor. Live demo. * Blazor PDF - stars last-commit Generate de PDF document with iTextSharp from a Blazor Server App. * Blazor SVG Helper - stars last commit Create SVG elements with children (circle, rectangle, image, text, and others) and render with RenderTreeBuilder. * 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 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.SpeechSynthesis - A library to provide Speech Synthesis API access for Blazor. * Blazor BarCode – A barcode library for Blazor using barcode fonts. * BlazorState.Redux - Develop Blazor apps with Redux. * Howler.Blazor - A Blazor JSInterop wrapper for Howler.js, an audio library. * jsMind.Blazor - A Blazor JSInterop wrapper for jsMind, a MindMapping tool. * Blazor Highcharts - last commit A port of the popular Highcharts library. Demo. * Blazor.LazyStyleSheet - Lazy loading for CSS style sheets. * Blazor.ScriptInjection - 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. * Blazor_EmojiFilePicker - last commit Bootstrap Text-Input with Smiley- and File-Support for Blazor. * Blazor Library Asset Helper - last commit A VISX extension that can list all JS and CSS assets from Nuget package razor libraries you are using in your Blazor app. It will generate all the <script> and <link> tags for your HTML page for you to copy/paste. Available on the Visual Studio Marketplace. * Blazm.Bluetooth - A Blazor library for connecting to devices using Bluetooth. * WebBluetooth - Blazor service for the experimental WebBluetooth functions. Based on Blazm.Bluetooth. * BlazorApplicationInsights - last commit Application Insights for Blazor web applications. * BracketShow.BlazorNavigationManagerExtensions - last commit Simple set of extensions for the Navigation Manager to simplify its usage for things we are likely to do in most of our Blazor applications. * BlazorX.NavigationState - BlazorX.NavigationState provides a set of utilities that allow you to observe and bind query strings directly to Blazor components. * Blazor Printing - Print and save PDF documents with a native print dialog in a Blazor Server or client Application. * XLocalizer - GitHub Stars last commit Easily localize Asp.Net Core web applications with online translation and auto resource creating. * BlazorTemplater -last-commit Use .razor components to render HTML strings for email content. ### 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. * WebSocketHelper - stars last commit Helper for Web Socket in Blazor. * 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). * 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. * Bionic - An Ionic CLI clone for Blazor projects. * BlazorFileSaver - Blazor Component wrapper for FileSaver.js (Demo). * Blazor.DownloadFileFast - Fast download of files to the browser from Blazor without any javascript library reference or dependency. (Demo). * Blazor.DynamicJavascriptRuntime.Evaluator - Execute dynamic object expressions as Javascript in Blazor client-side apps. * Blazor.AdaptiveCards - Adaptive Cards for Blazor. Documentation. * EventHorizon Blazor TypeScript Interop Generator - 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 - Generators.Blazor is a source generator for improving performance in Blazor. The project also contains analyzers to detect common issues in Blazor apps. * BlazorZXingJs - last commit Barcode/QRCode Reader and QRCode writer components. This is a Blazor wrapper around zxing-js library. It supports variety of barcode and 2d code types.

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.