Skip to content
daisyBlazor

daisyUI components and charts for Blazor.

85 typed Blazor components and 54 chart types on Tailwind CSS v4 and daisyUI v5. The API mirrors MudBlazor, so an existing app can move one component at a time. 37 themes, and the CSS build ships inside the NuGet package.

DaisyBlazor components and a chart composing a dashboard card
Acme Cloud Production
Signups by plan
Signups by plan Pro: Q1 182, Q2 240, Q3 265, Q4 342; Team: Q1 96, Q2 120, Q3 151, Q4 188 Q1Q2Q3Q4050100150200250300350Pro · Q1: 182Pro · Q2: 240Pro · Q3: 265Pro · Q4: 342Team · Q1: 96Team · Q2: 120Team · Q3: 151Team · Q4: 188
Pro Team

Every component, running live.

Every tile is a real component running in your browser through WebAssembly, organised by daisyUI's own taxonomy. Click through for examples, source, a playground and the API.

Switch
  • Cart
  • Shipping
  • Payment
Steps
Deployment succeeded.
Alert
Blazor .NET 10 daisyUI
Chip
All 85 components

54 charts, every one in your theme.

From line and bar to Sankey, treemaps, candlesticks, calendars and maps. D3 computes the layout, Razor draws the SVG in theme colours, and the server package can send the finished chart in the first HTML.

All 54 charts

Try every parameter.

Most component pages, and the main charts, carry a playground. Its controls are built from DaisyBlazor's own inputs, generated from the component's parameters, and the Razor underneath rewrites itself as you go. Copy it once it looks right.

Playground

Color Color
Variant Variant
Size Size
<Button
        Color="Color.Primary"
        Variant="Variant.Filled">
    Save changes
</Button>

37 themes, one switch.

Every daisyUI theme ships in the preset, plus two of our own. Click one: this whole site switches, and your app does the same through ThemeProvider.

Leave MudBlazor one rename at a time.

The same parameter names, the same Color, Variant and Size enums, Icons.Material.*, IDialogService and ISnackbar. Move a page, ship it, move the next.

Read the migration guide
Before · MudBlazor
<MudButton Color="Color.Primary"
           Variant="Variant.Filled"
           StartIcon="@Icons.Material.Filled.Download"
           OnClick="Save">
    Download
</MudButton>
After · DaisyBlazor
<Button Color="Color.Primary"
        Variant="Variant.Filled"
        StartIcon="@Icons.Material.Filled.Download"
        OnClick="Save">
    Download
</Button>

No Node. No npm.

The NuGet package carries the preset (daisyUI, the themes, a safelist of every class the components emit) and can run the Tailwind standalone CLI on build. One property in your project file, one import in your stylesheet. This site builds its own CSS exactly that way.

How the preset works
MyApp.csproj
<PackageReference Include="DaisyBlazor.Components" Version="*" />

<PropertyGroup>
  <DaisyBlazorBuildCss>true</DaisyBlazorBuildCss>
</PropertyGroup>
Styles/main.css
@import "tailwindcss";
@import "../obj/daisyblazor/preset.css";
dotnet build
DaisyBlazor: tailwindcss -i Styles/main.css -o wwwroot/css/app.css
Build succeeded.

Start building.

Something went wrong while running the docs. Reload