BlazorNova BlazorNova
BlazorNova BlazorNova
☰

BlazorNova

A fluent UI toolkit for Blazor. Build themed, surface-aware components with a compile-time CSS generator that emits only what you use.

Why BlazorNova?

Everything you need to build production Blazor apps — with zero runtime CSS overhead.

Surface System

Nested surfaces cascade colours automatically. Components stay theme-aware without manual wiring.

Fluent CSS API

Type-safe, IntelliSense-driven styling. Responsive breakpoints, pseudo-states, and conditionals — all in C#.

Source Generator

A Roslyn source generator emits only the CSS your project uses. Zero unused styles, zero runtime cost.

Rich Components

Grids, forms, tabs, menus, modals, tree views — all themed and surface-aware out of the box.

Write Styles in C#

No CSS files. No class-name strings. Just fluent, type-safe code.

razor
<!-- 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>

Component Showcase

Buttons

Tabs

Surface-aware tabs that adapt to any theme automatically.

Ready to Build?

Get started with BlazorNova in minutes. Install the NuGet packages and start building themed Blazor apps.

BlazorNova © 2026