A fluent UI toolkit for Blazor. Build themed, surface-aware components with a compile-time CSS generator that emits only what you use.
Everything you need to build production Blazor apps — with zero runtime CSS overhead.
Nested surfaces cascade colours automatically. Components stay theme-aware without manual wiring.
Type-safe, IntelliSense-driven styling. Responsive breakpoints, pseudo-states, and conditionals — all in C#.
A Roslyn source generator emits only the CSS your project uses. Zero unused styles, zero runtime cost.
Grids, forms, tabs, menus, modals, tree views — all themed and surface-aware out of the box.
No CSS files. No class-name strings. Just fluent, type-safe code.
<!-- Surface-aware styling with fluent C# API -->
<BnSurface>
<WithContext Context="surface">
<div class="@NextBn.flex.gap_4.p_6.rounded_lg">
<BnButton Label="Save" Variant="ButtonVariant.Primary" />
<BnButton Label="Cancel" Variant="ButtonVariant.Tertiary" />
</div>
</WithContext>
</BnSurface>
<!-- Responsive, conditional, type-safe -->
<div class="@BlazorNova.New
.flex.flex_col.gap_4.p_4
.Md(x => x.flex_row.p_8)
.If(isActive, x => x.border_2.border_SurfacePrimary1_Bg)">
</div>Get started with BlazorNova in minutes. Install the NuGet packages and start building themed Blazor apps.