Flare.Theme.MaterialDesign3
0.41.0
dotnet add package Flare.Theme.MaterialDesign3 --version 0.41.0
NuGet\Install-Package Flare.Theme.MaterialDesign3 -Version 0.41.0
<PackageReference Include="Flare.Theme.MaterialDesign3" Version="0.41.0" />
<PackageVersion Include="Flare.Theme.MaterialDesign3" Version="0.41.0" />
<PackageReference Include="Flare.Theme.MaterialDesign3" />
paket add Flare.Theme.MaterialDesign3 --version 0.41.0
#r "nuget: Flare.Theme.MaterialDesign3, 0.41.0"
#:package Flare.Theme.MaterialDesign3@0.41.0
#addin nuget:?package=Flare.Theme.MaterialDesign3&version=0.41.0
#tool nuget:?package=Flare.Theme.MaterialDesign3&version=0.41.0
Flare.Theme.MaterialDesign3
Material Design 3 (baseline) light and dark theme for the Flare Blazor component library, including the built-in MD3 palettes.
dotnet add package Flare.Theme.MaterialDesign3
// as the default theme...
builder.Services.AddFlare(opts =>
{
opts.DefaultTheme = new MaterialDesign3Theme();
opts.DefaultPalette = Md3Palettes.Violet;
});
// ...or register alongside others, then switch at runtime:
builder.Services.AddFlareTheme(new MaterialDesign3Theme());
// await ThemeService.SetThemeAsync("md3");
Material 3 → Flare
| Material 3 | Flare | How you select it |
|---|---|---|
| Common buttons (elevated, filled, tonal, outlined, text) | FlareButton |
Variant="ButtonVariant.Elevated\|Filled\|Tonal\|Outlined\|Text" |
| Toggle button | FlareToggleButton |
@bind-Toggled |
| Segmented buttons | FlareButtonGroup of FlareToggleButton |
Connected="true" |
| FAB, small/large FAB | FlareFloatingActionButton |
Size="FabSize.Sm\|Md\|Lg" |
| Extended FAB | FlareFloatingActionButton |
a labelled FAB IS the extended one: set Label |
| Icon buttons | FlareIconButton |
Variant mirrors the button variants |
| Cards (elevated, filled, outlined) | FlareCard |
Variant="CardVariant.Elevated\|Filled\|Outlined" |
| Chips (assist, filter, input, suggestion) | FlareChip |
Variant, plus @bind-Selected for filter and Closable for input |
| Checkbox / Radio button / Switch | FlareCheckbox, FlareRadioGroup, FlareSwitch |
|
| Sliders | FlareSlider |
Range="true" for two handles |
| Text fields (filled, outlined) | FlareField and the typed fields |
Variant |
| Menus | FlareMenu + FlareMenuItem |
|
| Lists | FlareList + FlareListItem |
|
| Dialogs (basic, full-screen) | FlareDialog |
Size="DialogSize.FullScreen" |
| Snackbar | ISnackbarService |
injected; no markup |
| Tooltips (plain, rich) | FlareTooltip |
|
| Badges | FlareBadge |
Standalone for the bare pill |
| Progress indicators (linear, circular) | FlareProgressLinear, FlareProgressCircular |
|
| Navigation bar | FlareBottomNav |
|
| Navigation rail | FlareNavMenu |
Mode="NavMenuMode.Rail" |
| Navigation drawer (standard, modal) | FlareLayoutDrawer |
Variant="DrawerVariant.Persistent\|Temporary\|Responsive" |
| Top app bar | FlareLayoutAppBar |
|
| Tabs (primary, secondary) | FlareTabs |
Variant="TabsVariant.Primary\|Underline" |
| Search | FlareCombobox |
|
| Date / time pickers | FlareDatePicker, FlareDateRangePicker, FlareTimePicker |
|
| Divider | FlareDivider |
|
| Carousel | FlareCarousel |
Flare.Components.Carousel package |
Baseline, not Expressive
This package is M3 as specified before the Expressive update, and the difference is deliberate:
- One button size. Material's own M3-vs-Expressive table lists a single 40dp button; the XS/M/L/XL
ramp arrives with Expressive. Flare's
Sizestill works here - the steps are simply gentler. - No shape morph. A pressed button does not square off and a selected toggle does not swap shape.
- No wavy progress and no spring motion.
If you want those, use Flare.Theme.MaterialDesign3Expressive; the palettes and the colour roles are
shared, so switching between them changes geometry and motion, not colour.
Requires Flare.Components. Repository & docs: https://github.com/jrfrigat/Flare - MIT licensed.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Flare.Abstractions (>= 0.41.0)
- Flare.Theme.MaterialDesign3.Tokens (>= 0.41.0)
- Flare.Theme.MaterialDesign3Expressive (>= 0.41.0)
- Flare.Theming (>= 0.41.0)
-
net8.0
- Flare.Abstractions (>= 0.41.0)
- Flare.Theme.MaterialDesign3.Tokens (>= 0.41.0)
- Flare.Theme.MaterialDesign3Expressive (>= 0.41.0)
- Flare.Theming (>= 0.41.0)
-
net9.0
- Flare.Abstractions (>= 0.41.0)
- Flare.Theme.MaterialDesign3.Tokens (>= 0.41.0)
- Flare.Theme.MaterialDesign3Expressive (>= 0.41.0)
- Flare.Theming (>= 0.41.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.41.0 | 29 | 9/24/2026 |
| 0.40.0 | 58 | 9/23/2026 |
| 0.39.0 | 85 | 9/21/2026 |
| 0.38.0 | 88 | 9/19/2026 |
| 0.37.0 | 99 | 9/13/2026 |
| 0.36.0 | 94 | 9/13/2026 |
| 0.35.0 | 99 | 9/12/2026 |
| 0.34.0 | 97 | 9/11/2026 |
| 0.33.0 | 129 | 9/7/2026 |
| 0.32.0 | 102 | 9/6/2026 |
| 0.31.0 | 104 | 9/5/2026 |
| 0.30.0 | 92 | 9/4/2026 |
| 0.29.0 | 100 | 9/4/2026 |
| 0.28.0 | 94 | 9/4/2026 |
| 0.27.0 | 100 | 9/3/2026 |
| 0.26.3 | 99 | 9/3/2026 |
| 0.26.2 | 106 | 8/31/2026 |
| 0.26.1 | 101 | 8/31/2026 |
| 0.26.0 | 88 | 8/30/2026 |
| 0.25.0 | 100 | 8/29/2026 |