dievas library

Dievas design system. Flutter theme and component layer.

Import this library to access the full Dievas public API:

Classes

ActionColours
Interactive element colour roles across all states and semantic intents.
BackgroundColours
Surface and background colour roles, from scaffold base to elevated overlays.
BorderColours
Border and divider colour roles.
CoreColours
Brand-identity colours.
DievasAccordion
DievasAccordionItem
DievasAccordionThemeData
DievasAlert
An inline alert surface communicating status or feedback to the user.
DievasAlertThemeData
Theme data for DievasAlert.
DievasAnimationThemeData
The animation sub-system for a Dievas theme.
DievasAuthCode
A digit-by-digit passcode entry field.
DievasAuthCodeThemeData
Theme data for DievasAuthCode.
DievasAvatar
A circular or square container that displays a user's image, initials, or a placeholder icon.
DievasAvatarThemeData
Theme data for DievasAvatar.
DievasBadge
A small label used to communicate status, count, or categorical metadata.
DievasBadgeThemeData
Theme data for DievasBadge.
DievasBanner
A persistent, scope-owned banner shown at the top of the viewport.
DievasBorderThemeData
The border radius and stroke-width sub-system for a Dievas theme.
DievasBottomSheet
The surface widget placed inside showDievasBottomSheet.
DievasBottomSheetThemeData
Theme data for DievasBottomSheet.
DievasBreadcrumb<T>
A horizontal breadcrumb navigation trail.
DievasBreadcrumbThemeData
Theme data for DievasBreadcrumb.
DievasButtonStyle
Sealed base for all Dievas button style discriminators.
DievasButtonThemeData<T extends DievasButtonThemeStyle>
Sealed base for all Dievas button theme data classes.
DievasCheckbox
A custom-drawn checkbox that uses only Dievas theme tokens.
DievasCheckboxThemeData
Theme data for DievasCheckbox.
DievasCircularProgress
A circular spinner / progress ring.
DievasCircularProgressThemeData
Theme data for DievasCircularProgress.
DievasColourThemeData
The complete colour sub-system for a Dievas theme.
DievasComponentThemeData
The component-level theme sub-system for a Dievas theme.
DievasDarkThemeData
Default Dievas dark theme.
DievasDivider
A thin hairline rule that separates content regions.
DievasDotIndicator
A horizontal row of dots indicating page position.
DievasDotIndicatorThemeData
Theme data for DievasDotIndicator.
DievasDrawer
DievasDrawerState
DievasDrawerThemeData
DievasDropdown<T>
A select-style dropdown that shows a trigger with the current selection and opens an overlay with options on tap.
DievasDropdownThemeData
Theme data for DievasDropdown.
DievasElevationThemeData
The elevation sub-system for a Dievas theme.
DievasEmptyState
A structured empty state surface — icon, title, description, optional CTA.
DievasEmptyStateThemeData
Theme data for DievasEmptyState.
DievasFilledButton
A filled button with a solid background colour.
DievasFilledButtonGroupThemeData
Aggregates the per-style DievasFilledButtonThemeData variants.
DievasFilledButtonThemeData
Theme data for DievasFilledButton.
DievasGlobalThemeData
Sealed abstract base for all Dievas theme implementations.
DievasGrid
A LayoutBuilder-backed widget that inserts the current DievasGridBreakpoint into the widget tree.
DievasGridBreakpoint
A single breakpoint in the Dievas grid system.
DievasIcon
A thin wrapper around Icon / ImageIcon that enforces Dievas sizing and colour semantics via the theme.
DievasIconButton
A square or circular button that displays a single icon with no label.
DievasIconButtonGroupThemeData
Aggregates the per-style DievasIconButtonThemeData variants.
DievasIconButtonThemeData
Theme data for DievasIconButton.
DievasLightThemeData
Default Dievas light theme.
DievasLinearProgress
A horizontal progress bar.
DievasLinearProgressThemeData
Theme data for DievasLinearProgress.
DievasLoader
A standalone loading indicator — distinct from the inline button loading state.
DievasLoaderThemeData
Theme data for DievasLoader — a standalone full-surface loading widget.
DievasLocalizations
Localization strings for Dievas component-internal copy.
DievasMenuItem
A list item typically used inside menus, drawers, and dropdowns.
DievasMenuItemThemeData
Theme data for DievasMenuItem.
DievasModal
The card widget rendered inside showDievasModal.
DievasModalThemeData
Theme data for DievasModal.
DievasOpacityThemeData
The opacity sub-system for a Dievas theme.
DievasOutlinedButton
A button with a transparent background and a visible border.
DievasOutlinedButtonGroupThemeData
Aggregates the per-style DievasOutlinedButtonThemeData variants.
DievasOutlinedButtonThemeData
Theme data for DievasOutlinedButton.
DievasPopover
DievasPopoverThemeData
DievasRadio<T>
A custom-drawn radio button that uses only Dievas theme tokens.
DievasRadioThemeData
Theme data for DievasRadio.
DievasScope
The entry-point widget for the Dievas design system.
DievasScopeState
Mutable state for DievasScope.
DievasSearchThemeData
Theme data for DievasSearchWithList and DievasSearchWithDropdown.
DievasSearchWithDropdown<T>
A search field with an overlay dropdown showing filtered results.
DievasSearchWithList<T>
A search field with an inline filtered-results list.
DievasSegmentedControl<T>
A horizontal row of mutually exclusive segments.
DievasSegmentedControlThemeData
Theme data for DievasSegmentedControl.
DievasSizingThemeData
Component sizing tokens — heights, icon sizes, and avatar dimensions.
DievasSnackbar
A brief, non-blocking message shown at the bottom of the viewport.
DievasSnackbarAction
An optional action shown inside a DievasSnackbar.
DievasSnackbarThemeData
Theme data for DievasSnackbar.
DievasSpacingThemeData
The spacing sub-system for a Dievas theme.
DievasSwitch
A custom-drawn animated toggle switch that uses only Dievas theme tokens.
DievasSwitchThemeData
Theme data for DievasSwitch.
DievasTabBar
A horizontal row of tabs with an animated underline indicator.
DievasTabBarThemeData
Theme data for DievasTabBar.
DievasTag
An interactive or read-only chip that can carry a label, a leading icon, and an optional dismiss (×) affordance.
DievasTagThemeData
Theme data for DievasTag.
DievasTextArea
A multiline text input area.
DievasTextButton
A text-only button with no background or border.
DievasTextButtonGroupThemeData
Aggregates the per-style DievasTextButtonThemeData variants.
DievasTextButtonThemeData
Theme data for DievasTextButton.
DievasTextInput
A themed text input field.
DievasTextInputGroup
A horizontally-grouped set of input segments with a shared border.
DievasTextInputGroupThemeData
Theme data for DievasTextInputGroup.
DievasTextInputThemeData
Theme data for DievasTextInput and DievasTextArea.
DievasTheme
The Dievas InheritedModel — the single source of truth for theme data in the widget tree.
DievasThemeData
The Dievas theme contract.
DievasTooltip
A Dievas-styled tooltip that wraps the platform Tooltip widget.
DievasTooltipThemeData
Theme data for DievasTooltip.
DievasTypographyThemeData
The complete typography sub-system for a Dievas theme.
FeedbackColour
A value object holding the four colour sub-roles for a single feedback semantic (success, warning, error, or info).
FeedbackColours
Feedback colour roles — success, warning, error, and info.
IconColours
Icon colour roles.
InputColours
Colour roles specific to text input fields across all states.
StaticColours
Theme-invariant colours that never flip between light and dark mode.
SurfaceColours
Surface colour roles for specialized contexts within the Dievas design system.
SwitchColours
Colour roles for the toggle switch component.
TextColours
Text colour roles across all contrast levels and surface types.

Enums

DievasAlertTone
Semantic tone of a DievasAlert.
DievasAvatarShape
Visual style of the avatar container.
DievasAvatarSize
Size variants for DievasAvatar.
DievasBadgeStyle
Visual style of DievasBadge.
DievasBadgeTone
Colour variant driving the semantic tone of a DievasBadge.
DievasButtonIconStyleBehavior
Controls how a leading or trailing icon's colour behaves during interaction.
DievasButtonShape
Corner shape for Dievas button components.
DievasButtonSize
Available sizes for Dievas button components.
DievasButtonState
Interaction states for Dievas button components.
DievasCheckboxValue
State values for DievasCheckbox.
DievasCircularProgressSize
Size variants for DievasCircularProgress.
DievasCircularProgressStyle
Visual style of DievasCircularProgress.
DievasDividerOrientation
Orientation of DievasDivider.
DievasFilledButtonStyle
Visual style variants for DievasFilledButton.
DievasIconButtonStyle
Visual style variants for DievasIconButton.
DievasIconSize
Size variants for DievasIcon.
DievasLinearProgressStyle
Visual style of DievasLinearProgress.
DievasLoaderSize
Size variants for DievasLoader.
DievasOutlinedButtonStyle
Visual style variants for DievasOutlinedButton.
DievasPopoverPosition
DievasTagStyle
Visual style of DievasTag.
DievasTextButtonStyle
Visual style variants for DievasTextButton.
DievasTextInputGroupSize
Size variants for DievasTextInputGroup.
DievasTextInputSize
Size variants for DievasTextInput.
DievasThemeAspect
Named aspects of the Dievas theme — used by DievasTheme (InheritedModel) to scope rebuilds to only the widgets that depend on a changed aspect.

Mixins

DievasScopeController
Controller API exposed by DievasScope.of.

Extensions

DievasGridContextExtension on BuildContext
BuildContext extension for convenient grid breakpoint access.
DievasThemeContextExtension on BuildContext
Flat BuildContext extension for accessing Dievas theme sub-systems.

Functions

showDievasBottomSheet<T>({required BuildContext context, required WidgetBuilder builder, bool isDismissible = true, bool enableDrag = true, bool isScrollControlled = false, RouteSettings? routeSettings}) Future<T?>
Shows a Dievas-styled modal bottom sheet.
showDievasModal<T>({required BuildContext context, required WidgetBuilder builder, bool barrierDismissible = true, RouteSettings? routeSettings}) Future<T?>
Shows a Dievas-styled modal dialog.

Typedefs

DievasAppBuilder = Widget Function(BuildContext context, DievasThemeData theme, Widget? child)
Builds an app subtree with access to the resolved Dievas theme.
DievasInputThemeValue<T> = ({T lg, T md, T sm})
Size-keyed record for input-family component theme properties.
DievasOverlayBuilder = Widget Function(BuildContext context, Animation<double> animation)
Builds a transient overlay surface such as a banner or snackbar.