liquid_glass_widgets library
Liquid Glass Implementation according to Apple's Guidelines
Classes
- AdaptiveGlass
- A renderer-agnostic glass surface that intelligently selects the best rendering path based on GlassQuality and the active Flutter renderer.
- AdaptiveGlassText
- A Text drop-in that keeps itself readable over a glass surface by sampling the content behind it.
- AdaptiveLiquidGlassLayer
- An adaptive liquid glass layer that provides a glass background with proper fallback handling across all platforms.
- AnchorStretchSettings
- Configuration for the anchor stretch effect on interactive glass widgets.
- AnimatedGlassIndicator
- A shared component that renders the interactive "Jelly" indicator used in GlassTabBar, GlassSegmentedControl, and GlassBottomBar.
- DefaultButtonSettings
- An InheritedWidget that provides default LiquidGlassSettings for descendant glass buttons.
- DividerSettings
- Configuration for optional vertical dividers between tabs in GlassTabBar.
- GlassA11yScope
- Configures how glass-aware text widgets in child handle contrast against the content behind glass surfaces.
- GlassA11yScopeData
- The resolved configuration exposed by a GlassA11yScope.
- GlassAccessibilityData
- Accessibility state for the liquid glass widget tree.
- GlassAccessibilityScope
- Reads system accessibility preferences and makes them available to all glass widgets below it in the widget tree.
- GlassActionSheetAction
- An action that can be taken from a showGlassActionSheet call.
- GlassAdaptiveDiagnostic
- Rich diagnostic snapshot emitted by GlassAdaptiveScope whenever the effective quality changes.
- GlassAdaptiveScope
- Automatically adjusts GlassQuality for its subtree based on real device raster performance, handling three scenarios developers can't easily test:
- GlassAdaptiveScopeConfig
- Bundles all GlassAdaptiveScope configuration into a single, portable value object.
- GlassAdaptiveScopeData
- Data propagated by GlassAdaptiveScope to all glass widgets below it.
- GlassAppBar
- A navigation bar layout widget following Apple's iOS 26 design patterns.
- GlassAvatar
- A circular avatar with a liquid glass rim, showing an image, custom content (e.g. initials), or a fallback icon.
- GlassBackdropScope
- Deprecated — this widget is now a no-op. Remove it from your tree.
- GlassBackgroundSource
- Marks a widget as the texture capture source for the nearest LiquidGlassScope.
- GlassBadge
- A glass morphism badge following iOS 26 liquid glass design.
- GlassBottomBar
- Deprecated: Use GlassTabBar.bottom instead.
- GlassBottomBarCollapseConfig
- Enables the bottom bar's collapse-to-extra-button interaction.
- GlassBottomBarTab
- Configuration for a tab in GlassBottomBar.
- GlassButton
- Glass morphism button with scale animation and glow effects.
- GlassButtonGroup
- A container that groups multiple buttons in a single glass pill.
- GlassButtonGroupItem
- A lightweight data class representing a single item in a GlassButtonGroup.
- GlassCalendarPicker
- A full calendar-grid date picker in the liquid glass aesthetic — month navigation, single or range selection, with an animated glass highlight that slides between days.
- GlassCard
- A glass card widget following Apple's card design patterns.
- GlassChart
-
Wraps any chart widget — child can be an
fl_chartLineChart,BarChart,PieChart, a custom painter, or anything else — in a properly-styled liquid glass surface, with an optional title and legend. - GlassChartLegendEntry
- A single row in a GlassChart's legend.
- GlassChip
- A glass morphism chip following Apple's iOS 26 design patterns.
- GlassCommand
- A single action registered with a GlassCommandPalette.
- GlassCommandPalette
- A Spotlight/Raycast-style command palette in liquid glass.
- GlassCommandPaletteScope
- Binds a global keyboard shortcut (⌘K on macOS/web, Ctrl+K elsewhere by default) that presents a GlassCommandPalette over child.
- GlassContainer
- A foundational glass container widget following Apple's liquid glass design.
- GlassContentAwareBrightness
- Gives a single glass control a content-aware light/dark appearance.
- GlassContentAwareContent
- Marks the sampled content region of a GlassContentAwareScope.
- GlassContentAwareScope
- Drives iOS 26-style content-aware light/dark adaptation for glass controls floating over scrolling content.
- GlassContentAwareScopeState
- State (and registration surface) of a GlassContentAwareScope.
- GlassContentAwareSubscription
- A live registration of a glass control with a GlassContentAwareScope.
- GlassDateRange
- A closed date range, as used by GlassCalendarPicker's range-selection mode.
- GlassDefaults
- Default values for glass visual properties.
- GlassDialog
- A glass morphism alert dialog following Apple's iOS design patterns.
- GlassDialogAction
- Configuration for a dialog action button.
- GlassDivider
- A glass-aesthetic separator for use between glass content sections.
- GlassDock
- A macOS-style Dock: a row of glass-backed icons that magnify smoothly as the cursor approaches, with a continuous falloff across neighboring icons — matching Apple's dock magnification, not a simple per-icon hover-scale.
- GlassDockItem
- A single icon registered with a GlassDock.
- GlassFormField
- A standard form field wrapper for glass inputs following iOS design patterns.
- GlassGlow
- Represents a layer that can paint a glowing effect below its child.
- GlassGlowColors
- Color palette for glass glow effects.
- GlassGroupedSection
- A convenience wrapper that groups GlassListTiles inside a GlassCard.
- GlassIconButton
- A glass morphism icon button following Apple's iOS 26 design patterns.
- GlassInteractionSettings
- Theme-level configuration for glass widget interaction physics.
- GlassInteractionSilence
- A universal wrapper that silences GlassSheet interactions for its child.
- GlassIsolationScope
- An InheritedWidget that tells descendant glass widgets whether to use their own independent glass rendering layer or share the nearest ancestor's.
- GlassLargeTitle
- A sliver widget that renders a large 34pt iOS 26 navigation title (and optionally an inline search bar) which collapse smoothly as the user scrolls.
- GlassLargeTitleController
- Coordinates the large-title + search-bar collapse animation between GlassLargeTitle and GlassAppBar.
- GlassListTile
- A glass-aesthetic list tile following iOS 26 grouped row design.
- GlassLuminanceSampler
- Reads the backdrop luminance behind glass surfaces.
- GlassMenu
- A liquid glass context menu that morphs from its trigger button.
- GlassMenuController
- Drives a GlassMenu imperatively, bypassing the trigger tap.
- GlassMenuDivider
- A separator line for use within a GlassMenu.
- GlassMenuItem
- A menu item for use within a GlassMenu.
- GlassMenuLabel
- A non-interactive label or content item for use within a GlassMenu.
- GlassModalSheet
- A high-fidelity, liquid glass modal sheet inspired by iOS 18+ design patterns.
- GlassModalSheetController
- Programmatic controller for a GlassModalSheet.
- GlassModalSheetScaffold
- A convenience scaffold that layers a GlassModalSheet over a body widget.
- GlassModalSheetStateProvider
- Inherited widget that provides SheetStateInfo to its descendants.
- GlassMorphController
- A Flutter-idiomatic controller for liquid glass morph animations.
- GlassMotionScope
- Drives the glass specular highlight angle from a stream of radians.
- GlassPage
- The recommended root widget for building a route or screen with glass surfaces.
- GlassPageControl
-
A glass morphism page control following iOS 26's
UIPageControldesign. - GlassPasswordField
- A secure glass text field for password entry.
- GlassPerformanceMonitor
- Monitors raster frame durations and emits a developer warning when GlassQuality.premium surfaces are active and GPU budget is exceeded.
- GlassPicker
- A glass picker widget following iOS design patterns.
- GlassPopover
- A liquid glass popover that morphs from its trigger button.
- GlassProgressIndicator
- A glass morphism progress indicator following Apple's iOS 26 Liquid Glass design patterns.
- GlassPullDownButton
- A toolbar button that opens a liquid glass pull-down menu.
- GlassQualityPersistence
-
Zero-config persistence for
GlassAdaptiveScope's settled GlassQuality across app cold starts. - GlassQualityStore
-
A pluggable backend for persisting
GlassAdaptiveScope's settled GlassQuality across app cold starts. - GlassRatingBar
- An interactive (or read-only) star rating row.
- GlassScaffold
- A one-stop-shop scaffold that replaces the manual assembly of GlassPage, Scaffold, GlassScrollEdgeEffect, and a Stack for proper z-ordering.
- GlassScrollEdgeEffect
- A widget that fades scroll content at the top and/or bottom edges.
- GlassSearchableBottomBar
- A glass bottom navigation bar with a morphing search pill.
- GlassSearchBar
- A glass morphism search bar following Apple's iOS 26 design patterns.
- GlassSearchBarConfig
- Configuration for the morphing search bar in GlassSearchableBottomBar.
- GlassSegment
- Configuration for a single segment in GlassSegmentedControl.
- GlassSegmentedControl
- A glass morphism segmented control following Apple's design patterns.
- GlassShadow
- Default light-mode glass shadow values, matching iOS 26 elevation.
- GlassSheet
- A glass morphism bottom sheet following Apple's iOS 26 design patterns.
- GlassSkeletonLoader
- A shimmering placeholder block for loading states, in the glass aesthetic.
- GlassSlider
- A glass morphism slider following Apple's iOS 26 design patterns.
- GlassSpring
- Static spring-description factories that mirror motor's named presets.
- GlassStepper
-
A glass-aesthetic numeric stepper matching iOS 26's
UISteppercontrol. - GlassSwitch
- A glass toggle switch with Apple's signature jump animation.
- GlassTab
- Configuration for a tab in GlassTabBar (all constructors).
- GlassTabBar
- The iOS 26 structural bottom navigation bar.
- GlassTabBarAccessoryPlacementScope
- Provides the current GlassTabBarAccessoryPlacement to the widget tree.
- GlassTabBarExtraButton
- Configuration for the extra button in GlassBottomBar and GlassSearchableBottomBar.
- GlassTextArea
- A multi-line glass text area.
- GlassTextField
- A glass text field widget following Apple's input field design.
- GlassTheme
- Provides glass theme configuration to descendant widgets.
- GlassThemeData
- Theme data for liquid glass widgets.
- GlassThemePresets
- Ready-made GlassThemeData presets covering the entire glass widget catalog at once — drop one in via GlassTheme instead of tuning LiquidGlassSettings per widget.
- GlassThemeSettings
- A partial override of LiquidGlassSettings for use in GlassThemeVariant.
- GlassThemeVariant
- Theme configuration for a specific brightness (light or dark).
- GlassTimeline
- A vertical activity/changelog timeline: a connected line of glass nodes, each with a title, optional subtitle, and optional timestamp.
- GlassTimelineItem
- A single entry in a GlassTimeline.
- GlassToast
- A glass morphism toast/snackbar following iOS 26 liquid glass design.
- GlassToastAction
- Action button that can be displayed in a toast.
- GlassToolbar
- A glass morphism toolbar following Apple's iOS 26 design patterns.
- InheritedLiquidGlass
- A custom inherited widget that provides LiquidGlassSettings to descendants.
- InteractionNotification
- A notification that informs parent widgets that an interaction has started.
- JellyClipper
- Clipper that matches the shape and physics of the jelly indicator.
- LightweightLiquidGlass
- A lightweight, high-performance glass effect widget optimized for scrollable lists and universal platform compatibility.
- LiquidGlassBlendGroup
- A widget that groups multiple liquid glass shapes for blending.
- LiquidGlassLayer
-
Represents a layer of multiple
LiquidGlassshapes or LiquidGlassBlendGroups that have shared LiquidGlassSettings and will be rendered together. - LiquidGlassScope
- A scope that provides infrastructure for glass refraction on Skia and Web.
- LiquidGlassSettings
- Represents the settings for a liquid glass effect.
- LiquidGlassWidgets
- Entry point and configuration for the Liquid Glass Widgets library.
- LiquidMorphState
- The fully computed render state for one frame of a liquid morph animation.
- LiquidOval
-
Represents an ellipse shape that can be used by a
LiquidGlasswidget. - LiquidRoundedRectangle
-
Represents a rounded rectangle shape that can be used by a
LiquidGlasswidget. - LiquidRoundedSuperellipse
-
Represents a squircle shape that can be used by a
LiquidGlasswidget. - LiquidShape
-
Represents a shape that can be used by a
LiquidGlasswidget. - LiquidVerticalRoundedRectangle
- Represents a rounded rectangle shape with different radii for top and bottom.
- LiquidVerticalRoundedSuperellipse
- Represents a squircle shape with different radii for top and bottom.
- OffsetSpringBuilder
-
Like SpringBuilder but for Offset values.
Equivalent to motor's
MotionBuilder<Offset>withOffsetMotionConverter. - OffsetSpringController
- A controller that drives an Offset value using two independent SingleSpringControllers (one per axis).
- ProgressiveBlur
- A progressive (graduated) backdrop blur — the Signal / iOS-26 header look: a clean gaussian frost that is strongest at one edge and eases to perfectly sharp at the opposite edge. Stack it behind a translucent app bar so content dissolves beneath it instead of ending on a hard cut-off.
- ScrollControllerProvider
- InheritedWidget that propagates a ScrollController and ScrollPhysics to descendant widgets inside a GlassModalSheet.
- SearchableBottomBarController
- Manages the layout state machine for GlassSearchableBottomBar.
- SearchablePillLayout
- Immutable result of one SearchableBottomBarController.computeLayout call.
-
Default GlassQualityStore backing
GlassQualityPersistence.auto(). - SheetStateInfo
- Information about the current state of a GlassModalSheet.
- SingleSpringController
-
A lightweight controller that drives a single double value using
SpringSimulation. Equivalent to motor's
SingleMotionController. - SpringBuilder
- Animates a double value to new targets using a spring, calling builder on every frame.
- SpringRetarget
- Describes which spring animation axes need to be retargeted.
- VelocitySpringBuilder
-
Like SpringBuilder but also provides the current spring
velocityto the builder. Equivalent to motor'sVelocityMotionBuilder/SingleVelocityMotionBuilder.
Enums
- BadgePosition
- Position of the badge relative to the child widget.
- GlassA11yMode
- How AdaptiveGlassText (and other glass-aware text widgets) behave inside a GlassA11yScope.
- GlassActionSheetStyle
- Style of action sheet action.
- GlassBottomBarCollapseDirection
- Which way the tab pill retracts when the bottom bar collapses.
- GlassButtonStyle
- Visual style of a glass button.
- GlassCalendarSelectionMode
- Whether GlassCalendarPicker selects a single day or a date range.
- GlassExtraButtonPlacement
- Where a GlassTabBarExtraButton appears in a non-searchable GlassBottomBar or GlassTabBar.bottom.
- GlassExtraButtonPosition
- Where a GlassTabBarExtraButton appears relative to the search pill in a GlassSearchableBottomBar.
- GlassFillTransition
- Controls how the sheet transitions from its glass look to a solid color as it expands toward GlassSheetState.full.
- GlassIconButtonShape
- Shape options for GlassIconButton.
- GlassInteractionBehavior
- Controls which physical interaction effects are active on a glass surface when the user presses it.
- GlassMenuAlignment
- Controls which edge/corner of the trigger button the menu expands from.
- GlassQuality
- Rendering quality for glass effects.
- GlassQualityChangeReason
- Describes what triggered a GlassAdaptiveScope quality change.
- GlassScrollEdgeStyle
-
Edge effect style matching iOS 26's
.scrollEdgeEffectStyle. - GlassSheetDetent
- The resting heights a sheet may stop at, chosen via GlassModalSheet.detents. Mirrors UIKit's sheet detents:
- GlassSheetMode
- Controls whether the sheet can be swiped to dismiss or must stay docked.
- GlassSheetState
- The discrete snap positions a GlassModalSheet can occupy.
- GlassSpecularSharpness
- Specular highlight sharpness for liquid glass surfaces.
- GlassStatusBarStyle
- Controls how GlassPage styles the system status bar.
- GlassTabBarAccessoryPlacement
- Defines the visual placement state of a GlassTabBar bottom accessory.
- GlassTabPillAnchor
- Controls how the tab pill is anchored horizontally during the morph animation in GlassSearchableBottomBar.
- GlassToastPosition
- Position where the toast should appear on screen.
- GlassToastType
- Visual style and semantic meaning of the toast.
- MaskingQuality
- A glass morphism bottom navigation bar following Apple's design patterns.
- MorphPhase
- Semantic phase of the liquid glass morph lifecycle.
- MorphSpeed
- Controls the speed profile of a liquid glass morph animation.
- MorphStyle
- Describes the visual shape style of the liquid glass morph transition.
- ProgressiveBlurDirection
- The edge a ProgressiveBlur is strongest at; it eases to perfectly sharp at the opposite edge. Named after the direction the blur travels — e.g. topToBottom is heavy at the top and dissolves downward (the classic app-bar / status-bar look), bottomToTop is heavy at the bottom (e.g. a bottom bar or a fade above a docked toolbar).
Extensions
- GlassQualityExtension on GlassQuality
- Extension to convert GlassQuality to the underlying rendering method.
Properties
- debugPaintLiquidGlassGeometry ↔ bool
-
Whether to paint the liquid glass geometry texture for debugging purposes.
getter/setter pair
Functions
-
glassFuzzyScore(
String query, String target) → double? - Case-insensitive subsequence fuzzy match with a relevance score.
-
showGlassActionSheet<
T> ({required BuildContext context, String? title, String? message, required List< GlassActionSheetAction> actions, String cancelLabel = 'Cancel', bool showCancelButton = true, bool barrierDismissible = true, LiquidGlassSettings? settings, GlassQuality? quality}) → Future<T?> - A glass morphism action sheet following iOS 26 liquid glass design.
Typedefs
- GlassBottomBarExtraButton = GlassTabBarExtraButton
- Deprecated alias for GlassTabBarExtraButton.
- GlassBrightnessWidgetBuilder = Widget Function(BuildContext context, Brightness brightness, double darkAmount)
- Signature for GlassContentAwareBrightness.builder.
- GlassRefractionSource = GlassBackgroundSource
- Deprecated: use GlassBackgroundSource instead.
- OffsetSpringWidgetBuilder = Widget Function(BuildContext context, Offset value, Widget? child)
- Signature for the builder callback used by OffsetSpringBuilder.
- SpringWidgetBuilder = Widget Function(BuildContext context, double value, Widget? child)
- Signature for the builder callback used by SpringBuilder.
- VelocitySpringWidgetBuilder = Widget Function(BuildContext context, double value, double velocity, Widget? child)
- Signature for the builder callback used by VelocitySpringBuilder.