Material Design controls

Material Design 3 controls for C# desktop apps, ported from Flutter's Material library.

Plumix.Material layers an app shell and a full control set on top of the core widgets: Scaffold with app bar, drawers and FAB; the four button emphases; cards, list tiles, data tables and steppers. Theming flows through ThemeData with M3 colour and typography tokens, and state layers, ripples and Hero transitions behave as they do in Flutter. Several controls expose Adaptive variants that switch to the Cupertino path on iOS and macOS.

ThemeMaterial

Propagates ThemeData (M3 tokens, colors, text styles) to descendants.

Flutter equivalent: Theme
ScaffoldMaterial

App shell with body, app bar, drawers, FAB, and bottom nav bar.

Flutter equivalent: Scaffold
AppBarMaterial

Top bar with title, leading, actions, toolbar height, and icon themes.

Flutter equivalent: AppBar
ElevatedButtonMaterial

Filled button with elevation, ripple, hover/focus state layers.

Flutter equivalent: ElevatedButton
TextButtonMaterial

Flat, low-emphasis button with state-layer overlays.

Flutter equivalent: TextButton
OutlinedButtonMaterial

Bordered, medium-emphasis button with outline token defaults.

Flutter equivalent: OutlinedButton
FilledButtonMaterial

High-emphasis filled button; FilledButton.Tonal for secondary emphasis.

Flutter equivalent: FilledButton
CardMaterial

Material surface with elevated/filled/outlined variants, tint, and clipping.

Flutter equivalent: Card
ListTileMaterial

One/two/three-line tile with leading, title, subtitle, trailing, and M3 heights.

Flutter equivalent: ListTile
DrawerMaterial

Side panel with edge-drag open, velocity settle, and DrawerTheme.

Flutter equivalent: Drawer
FloatingActionButtonMaterial

Circular/extended FAB with variants, tooltip, hero tag, and cursor.

Flutter equivalent: FloatingActionButton
BottomNavigationBarMaterial

Fixed or shifting bottom tabs with animated label/icon/width transitions.

Flutter equivalent: BottomNavigationBar
SwitchMaterial

Material on/off toggle; Switch.Adaptive uses Cupertino path on iOS/macOS.

Flutter equivalent: Switch
CheckboxMaterial

Material checkbox with tristate; Checkbox.Adaptive uses CupertinoCheckbox.

Flutter equivalent: Checkbox
RadioMaterial

Material radio button; Radio.Adaptive uses CupertinoRadio on iOS/macOS.

Flutter equivalent: Radio
TooltipMaterial

Hover-triggered label overlay used by FAB and navigation bar tiles.

Flutter equivalent: Tooltip
ButtonBarMaterial

Aligns action buttons in a row with automatic column overflow and spacing.

Flutter equivalent: ButtonBar
RefreshIndicatorMaterial

Pull-to-refresh wrapper with Material arrowhead/spinner animation and adaptive variants.

Flutter equivalent: RefreshIndicator
StepperMaterial

Vertical or horizontal step-by-step flow with per-step state icons and connectors.

Flutter equivalent: Stepper
DropdownButtonMaterial

Tap-to-open selection list anchored to a button, with hint, disabled, and dense states.

Flutter equivalent: DropdownButton
PopupMenuButtonMaterial

Anchored popup menu with items, dividers, and checked entries.

Flutter equivalent: PopupMenuButton
DataTableMaterial

Sortable rows and columns with header/data row styling and selection.

Flutter equivalent: DataTable
AboutDialogMaterial

Application info dialog with an OSS license browser via LicensePage.

Flutter equivalent: AboutDialog