dsl library

Classes

MAction
Actions for interactable widgets.
MActionCallback
Background Callback Action.
MActivityIndicator
An indeterminate circular activity indicator.
MAdaptive
A dynamic binding that resolves from a key-value store. Two subtrees, one per platform — the escape hatch for what genuinely cannot be expressed once.
MAlign
Positions child within the space its parent gives it.
MAssetImage
MBadge
Badge overlay showing a count on top of a child.
MBarChart
A bar chart of a bound numeric series — step counts, weekly totals, hourly rainfall: the "how much per bucket" glance.
MBind
MBorder
MButton
A button that triggers an action.
MCenter
MColor
MColumn
MContainer
Container widget (background, radius).
MControl
A Control Center / Lock Screen control (iOS 18+) or Quick Settings tile (Android).
MDeviceValue
Reads a device metric in the widget process, so it is correct even when the app has not run for days.
MDivider
Divider line (horizontal by default, optionally vertical).
MDynamicIsland
Dynamic Island presentation regions.
MExpanded
The expanded Dynamic Island layout slots.
MFileImage
MFlexible
Gives child a proportional share of the free space along its parent's main axis. Only meaningful as a direct child of an MRow or MColumn.
MFlipper
Cycles through children on a timer, without the app running.
MGauge
Circular gauge / ring progress indicator.
MGradient
MIcon
Icon widget. iOS uses an SF Symbol name; Android uses a drawable resource name. At least one should be provided.
MImage
Image widget.
MImageSource
Image sources.
MInsets
MLaunchUrlAction
MLinearGradient
MListView
Dynamic List view.
MLocalized
Text looked up from the platform's own string resources, so the OS picks the device language.
MNetworkImage
An image loaded from the network and cached on disk.
MNode
Base class for all home widget nodes.
MosaicDefinition
The final definition of a widget.
MosaicLiveActivity
The canonical definition of a Live Activity (iOS) / ongoing notification.
MPadding
Padding widget.
MParam
A user-editable parameter a widget declares for OS configuration.
MPositioned
MProgressBar
MRadius
Per-corner radius for a container.
MRaw
Verbatim native code, for anything the DSL cannot express.
MRefreshAction
Reloads the widget in place, without naming a callback.
MRow
MSemantics
Gives child an accessibility label, so screen readers announce something meaningful instead of reading raw values or nothing at all.
MShadow
Drop shadow for a container.
MSizedBox
A fixed-size box, optionally wrapping child.
MSpacer
Spacer widget.
MSparkline
A line chart of a bound numeric series — the "how has this moved" glance a price, step count, or temperature widget is built around.
MStack
Stack layout (overlaps children).
MText
Text widget for home widgets.
MTextStyle
MTimer
Timer widget.
MToggleAction
Flips a boolean in shared storage, then redraws the widget.
MVisibility
Conditional visibility.

Enums

MAccentedRendering
Progress Bar widget. How an image is rendered when the user tints their widgets.
MAlignment
Where a child sits inside its parent's box.
MBoxFit
MContentTransition
How a text value animates when it changes between renders.
MControlKind
The interaction kind of an MControl.
MCrossAxisAlignment
MDeviceMetric
A device metric the widget reads natively, with the app closed.
MFontWeight
Styling types Font weight, matching Flutter's FontWeight scale.
MFormat
Value formatting modes for text bindings. How a bound numeric value is rendered.
MMainAxisAlignment
Column layout.
MParamType
The type of a user-editable widget MParam.
MResizeMode
MStackAlignment
Alignment for a MStack layer.
MSystemColor
A colour drawn from the user's own system theme.
MTextAlign
Horizontal text alignment.
MTextRole
A semantic type role, so a widget follows each platform's own scale instead of hand-guessed point sizes.