widgetbook library

A Flutter storybook that helps professionals and teams to catalogue their widgets.

Classes

AccessibilityAddon
A WidgetbookAddon for inspecting a. It's based on the accessibility_tools package.
AlignmentAddon
A WidgetbookAddon for wrapping use-cases with Align widget.
BooleanField
Field that builds Switch for bool values.
BuilderAddon
A WidgetbookAddon for wrapping use-cases with a builder.
ColorField
Field that builds ColorPicker for Color values using the ColorSpace to determine which format the Color is.
CupertinoThemeAddon
A ThemeAddon for changing the active CupertinoThemeData via CupertinoTheme.
DateTimeField
DeviceFrame
Simulate a physical device and embedding a virtual screen into it.
DeviceFrameAddon
A WidgetbookAddon for changing the active device/frame. It's based on the device_frame package.
DeviceFrameSetting
DeviceFrameStyle
The device frame style only allows to update the keyboardStyle for now.
DeviceFrameTheme
The theme gives a style to all its descentant device frames.
DeviceIdentifier
A unique identifier that represents a device.
DeviceInfo
Info about a device and its frame.
DeviceKeyboardStyle
The keyboard style allows to customize the virtual onscreen keyboard visuals.
Devices
A list of common device specifications sorted by target platform.
DoubleInputField
Field that builds TextFormField for double values.
DoubleKnobsBuilder
DoubleOrNullKnobsBuilder
DoubleSliderField
Field that builds Slider for double values.
DurationField
Field<T>
Fields are data representation of inputs that are used in the settings panel. They should be convertible to:
FieldCodec<T>
FieldsComposable<T>
Interface for defining APIs for features that use fields as a building block.
GenericDesktopMonitorFramePainter
GenericLaptopFramePainter
GenericPhoneFramePainter
GenericTabletFramePainter
GridAddon
GridPainter
InspectorAddon
IntInputField
Field that builds TextFormField for int values.
IntSliderField
Field that builds Slider for int values.
Knob<T>
Allows WidgetbookUseCases to have dynamically adjustable parameters.
KnobsBuilder
KnobsRegistry
ListField<T>
Field that builds DropdownMenu<T> for List<T> values.
LocalizationAddon
A WidgetbookAddon for changing the active Locale via Localizations.
MaterialThemeAddon
A ThemeAddon for changing the active ThemeData via Theme.
MultiAddonBuilder
Nests WidgetbookAddon builders inside each other, using Nested widget.
NoneDevice
StringField
Field that builds TextFormField for String values.
TextScaleAddon
A WidgetbookAddon for changing the active MediaQueryData.textScaleFactor via MediaQuery.
ThemeAddon<T>
A WidgetbookAddon for changing the active custom theme. A themeBuilder must be provided that returns an InheritedWidget or similar Widgets.
TimeDilationAddon
A WidgetbookAddon for changing timeDilation.
VirtualKeyboard
Display a simulated on screen keyboard at the bottom of a child widget.
Widgetbook
Describes the configuration for your Widget library.
WidgetbookAddon<T>
WidgetbookAddons are like global Knobs, they change the state for all WidgetbookUseCases. For example, you can manipulate the theme for all WidgetbookUseCases, instead of doing it one-by-one using Knobs.
WidgetbookCategory
WidgetbookCloudIntegration
Integration for Widgetbook Cloud, that is used to sync addons and knobs information with the host.
WidgetbookComponent
WidgetbookFolder
WidgetbookIntegration
Integrations are like lifecycle hooks that notifies implementer about WidgetbookState changes.
WidgetbookLeafComponent
A WidgetbookComponent with a single WidgetbookUseCase.
WidgetbookNode
A base class for all nodes in the navigation tree. The nodes have the following hierarchy:
WidgetbookPackage
WidgetbookRoot
The root of all WidgetbookNodes.
WidgetbookState
WidgetbookTheme<T>
WidgetbookUseCase
UseCases represent a specific configuration of a widget and can be used to check edge cases of a Widget.
ZoomAddon
A WidgetbookAddon for zoom/scaling.

Enums

ColorSpace
DeviceType
A device form factor.
FieldType

Functions

buildGenericDesktopMonitorDevice({required TargetPlatform platform, required String id, required String name, required Size screenSize, required Rect windowPosition, EdgeInsets safeAreas = EdgeInsets.zero, double pixelRatio = 2.0, EdgeInsets? rotatedSafeAreas, GenericDesktopMonitorFramePainter? framePainter}) DeviceInfo
Creates a generic desktop monitor device definition for the given name, target platform and screenSize. The windowPosition defines the position of a virtual window with a window frame adapted for the given platform.
buildGenericLaptopDevice({required TargetPlatform platform, required String id, required String name, required Size screenSize, required Rect windowPosition, EdgeInsets safeAreas = EdgeInsets.zero, double pixelRatio = 2.0, EdgeInsets? rotatedSafeAreas, GenericLaptopFramePainter? framePainter}) DeviceInfo
Creates a generic laptop device definition.
buildGenericPhoneDevice({required TargetPlatform platform, required String id, required String name, required Size screenSize, EdgeInsets safeAreas = EdgeInsets.zero, EdgeInsets rotatedSafeAreas = EdgeInsets.zero, double pixelRatio = 2.0, GenericPhoneFramePainter framePainter = const GenericPhoneFramePainter()}) DeviceInfo
Creates a generic phone device definition.
buildGenericTabletDevice({required TargetPlatform platform, required String id, required String name, required Size screenSize, EdgeInsets safeAreas = EdgeInsets.zero, EdgeInsets rotatedSafeAreas = EdgeInsets.zero, double pixelRatio = 2.0, GenericTabletFramePainter framePainter = const GenericTabletFramePainter()}) DeviceInfo
Creates a generic tablet device definition.
cupertinoAppBuilder(BuildContext context, Widget child) Widget
materialAppBuilder(BuildContext context, Widget child) Widget
widgetsAppBuilder(BuildContext context, Widget child) Widget

Typedefs

$int = int
AddonBuilder = Widget Function(BuildContext context, WidgetbookAddon addon, Widget child)
AppBuilder = Widget Function(BuildContext context, Widget child)
KnobAdded = T? Function<T>(Knob<T?> knob)
LabelBuilder<T> = String Function(T value)
ThemeBuilder<T> = Widget Function(BuildContext context, T theme, Widget child)