Fluent UI Blazor v5: Microsoft's component library for ASP.NET Core Blazor
Microsoft Fluent UI Blazor components library. For use with ASP.NET Core Blazor applications
At a glance
- What is it?
- Fluent UI Blazor wraps Microsoft's Fluent UI Web Components in C# and adds Blazor-specific components and services. Version 5 is on the dev branch, and the latest release is v5.0.1.
- Who is it for?
- Adopt Fluent UI Blazor v5 when your team already ships Blazor and wants Microsoft's design language without hand-writing wrappers over the web components. Stay on v4 if you cannot absorb a migration guide.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- Mainly C#, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on November 14, 2026, and from our analysis. They are not legal advice.
Star history
- microsoft/fluentui-blazor4,861 ★ · +41
| Repository | 2026-09-23 | 2026-11-14 |
|---|---|---|
| microsoft/fluentui-blazor | 4.8k | 4.9k |
41 Stars in the last 52 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
The gap Fluent UI Blazor fills for ASP.NET Core teams
Microsoft's Fluent design language is distributed as Fluent UI Web Components, which are custom elements. A Blazor developer can use those elements directly, but then every dialog, tooltip, data grid and icon has to be wired by hand: JavaScript interop for imperative APIs, cascading values for theming, and C# wrappers so the markup stays typed. Fluent UI Blazor does that wiring. The README describes the package as "a set of Blazor components which are used to build applications that have a Fluent design", with some components wrapping the official web components and others built specifically for Blazor. The audience is narrow and clear: teams already on ASP.NET Core Blazor who want the look of modern Microsoft applications without leaving C#. If your front end is React, Vue or plain Razor Pages, this library is not the shortest path; the underlying web components are.
What sits inside the package: wrappers, services and providers
The architecture is layered. At the bottom are the official Fluent UI Web Components. Above them, the library exposes Razor components such as FluentButton, FluentStack, FluentLabel and FluentDataGrid. Above that again sits a service layer registered through dependency injection, plus a provider component that the README says "hosts the providers required by services such as dialogs and tooltips". That layering explains the two-step setup most people trip over. Registering AddFluentUIComponents is not enough on its own; without FluentProviders in a top-level layout, dialog and tooltip services have nothing to render into. Interactivity is the third constraint. The README states that interactive Fluent components require an interactive Blazor render mode, applied globally or per page with @rendermode InteractiveServer. A statically rendered page can display a button but will not run its OnClick handler. The library also ships optional satellite packages: Icons, Emoji, and an Entity Framework adapter for FluentDataGrid.
Installing Fluent UI Blazor v5 and rendering a first component
The fastest route is the template package, which the README says configures "the packages, styles, services, providers, and icons for you".
dotnet new install Microsoft.FluentUI.AspNetCore.Templates
dotnet new fluentuiblazor -o MyApplicationRun dotnet new list fluent to see every installed Fluent template and its options, including the standalone WebAssembly, Aspire and MAUI Hybrid variants. For an existing project, add the packages and register the services.
dotnet add package Microsoft.FluentUI.AspNetCore.Components
dotnet add package Microsoft.FluentUI.AspNetCore.Components.Iconsbuilder.Services.AddFluentUIComponents();Then add the stylesheet link to the head of App.razor, index.html, _Layout.cshtml or _Host.cshtml depending on the hosting model, add the two @using lines to _Imports.razor, and place <FluentProviders /> at the end of MainLayout.razor. The README's verification snippet is a counter: a FluentButton with Appearance="ButtonAppearance.Primary" and an OnClick handler, a FluentLabel bound to currentCount, both inside a FluentStack with Orientation="Orientation.Vertical". If the button renders but the count never changes, the render mode is the first thing to check, not the component.
Where the v5 story gets uncomfortable
This is not a library you install once and forget. The default branch, dev, now carries v5, and the README notes that active v5 development moved there from dev-v5 on 2026-09-17, with git fetch origin --prune and git switch --track -c dev origin/dev for anyone tracking the old branch. Version 4 lives on the archive-v4 branch. The latest listed release is v5.0.1 from 2026-10-14, after v5.0.0 and v4.14.5 on 2026-09-28, and v5 comes with its own migration guide. The README also warns that daily builds "may contain breaking changes". None of this is unusual for a component library mid-major-version, but it should decide whether you start now.
Fluent UI Blazor or MudBlazor: two different bets
The comparison people search for is MudBlazor, and the difference is not cosmetic. Fluent UI Blazor deliberately sits on top of Microsoft's Fluent UI Web Components, so the visual output tracks Microsoft's design system, and the library inherits both the fidelity and the constraints of that layer, including the provider and render-mode requirements described above. If your product needs to look like Microsoft 365, the wrapper approach is the point. The same reasoning applies against hand-rolling: writing your own wrappers is viable, and it is roughly the work this project has already done.
Licence, maintenance and the cost of upgrading
The repository is MIT licensed, and the README carries the MIT badge; that is permissive and imposes no copyleft obligation on your application, though the repository also ships a THIRD-PARTY-NOTICES.TXT, so the bundled dependencies have their own terms worth reading before you redistribute. This is not legal advice. On maintenance, the last push to the repository was on 2026-10-30, and the repository is not archived, so work is ongoing. The cost that matters is upgrade cost, not maintenance risk. A new major version, v5, has shipped, the v4 code sits on a separate branch, and the README points to a what's new page for breaking changes on every upgrade. Budget for reading that page each time you bump the package, and for re-testing any FluentDataGrid or dialog code.
Editorial conclusion
Adopt Fluent UI Blazor v5 when your team already ships Blazor and wants Microsoft's design language without hand-writing wrappers over the web components. Stay on v4 if you cannot absorb a migration guide. Before committing, run dotnet new install Microsoft.FluentUI.AspNetCore.Templates on a throwaway project, check that AddFluentUIComponents is registered in both server and client projects under WebAssembly or Auto interactivity, and read the v4 to v5 migration guide for every component you already use.
Frequently asked questions
What is Fluent UI Blazor?
It is a component library for building Blazor applications with Microsoft's Fluent design language. Some components wrap the official Fluent UI Web Components, and others are Blazor-specific components and services.
How do I install Fluent UI Blazor in an existing ASP.NET Core project?
Add the Microsoft.FluentUI.AspNetCore.Components package with dotnet add package, then call builder.Services.AddFluentUIComponents() in Program.cs, add the stylesheet link and the @using lines, and place FluentProviders in a top-level layout.
Why does my Fluent UI Blazor button not respond to clicks?
Interactive Fluent components require an interactive Blazor render mode. The README shows applying @rendermode InteractiveServer globally or to the page or component that needs it, and notes that WebAssembly or Auto interactivity requires the services registered in both the server and client projects.
Is Fluent UI Blazor v5 stable enough to use?
v5.0.0 was released on 2026-09-28 and the latest listed release is v5.0.1; the README warns that daily builds may contain breaking changes. Version 4 code is kept on the archive-v4 branch, and the latest v4 release is v4.14.5.
Where can I find Fluent UI Blazor examples and a demo?
The README points to the documentation and demo site at www.fluentui-blazor.net, with a separate migration guide page for moving from v4 to v5. The repository also contains examples/Demo and examples/Samples directories.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/microsoft-fluentui-blazor)Star history chart for your README
[](https://hysenlabs.com/projects/microsoft-fluentui-blazor)Was this useful?