awaitware_ui_utilities 4.0.6
awaitware_ui_utilities: ^4.0.6 copied to clipboard
A powerful Flutter UI toolkit with 1500+ chainable extension methods for beautiful, responsive UIs. Spacing, colors, typography, animations, and more.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
4.0.6 - 2026-03-22 #
Fixed #
- Fix responsive visibility (
showOnXs,smAndUp,mdAndUp,lgAndUp, etc.) not working inside Row/Column — switched fromLayoutBuildertoMediaQueryfor accurate screen width detection
4.0.5 - 2026-03-22 #
Added #
- 26 color families with full 50-900 shades for Background, Text, and Icon extensions
- New colors: Emerald, Sky, Violet, Fuchsia, Rose, Slate, Zinc, Neutral, Stone, Taupe, Mauve, Mist, Olive
- Added missing colors: Amber, Lime, Cyan with full shades
- Full shades (50-900) for Purple, Pink, Orange, Yellow, Indigo, Teal (previously only 600)
- Total ~787 color methods across 3 extensions (bg, text, icon)
4.0.4 - 2026-03-22 #
Added #
- Icon color extensions (
IconColorExtensions on Icon) — color any Icon widget using chainable methods - Full shade support (50-900) for Blue, Red, Green, Gray icon colors
- Convenience colors:
iconWhite(),iconBlack(),iconPurple600(),iconPink600(),iconOrange600(),iconYellow600(),iconIndigo600(),iconTeal600()
4.0.3 - 2026-03-22 #
Fixed #
- Removed duplicate
scrollable()andscrollableHorizontal()from GestureExtensions (conflicted with LayoutExtensions) - Fixed README examples for AwInput (correct methods:
outlined,filled,rounded,underline,search)
4.0.1 - 2026-03-22 #
Fixed #
- Shortened package description to meet pub.dev 180-character limit
- Fixed documentation URL pointing to non-existent file (now points to COURSE.md)
- Updated README.md with full table of contents, feature overview table, and complete API reference for all versions
4.0.0 - 2026-03-22 #
Added - Navigation & Advanced Extensions #
Navigation Extensions
- Drawer content:
asDrawerContent()with custom width, background, border radius - Bottom navigation:
withBottomNav()with items, selected/unselected colors - End drawer:
withEndDrawer() - Tab bar view:
tabBarView()forList<Widget> AwNavhelpers:appBar(),appBarTransparent(),drawer(),bottomNav(),sideNav(),breadcrumb()
Sliver Extensions
- Widget to sliver:
asSliver(),sliverPadding(),sliverFillRemaining() - Persistent header:
asSliverPersistentHeader()with pinned/floating support - List to slivers:
sliverList(),sliverListSeparated(),sliverGrid(),sliverGridExtent() - Custom scroll:
customScrollView()from list of slivers AwSliverhelpers:appBar(),appBarLarge(),stickyHeader()
Table/DataTable Extensions
- Table styling:
tableCard(),tableBordered() - Table assembly:
asTable()fromList<TableRow> AwTablehelpers:simple(),striped(),bordered(),compact()
Stepper/Timeline Extensions
- Step indicators:
withStepIndicator()with active/inactive colors - List to stepper:
stepper(),timeline(),timelineHorizontal() AwTimelinehelpers:progress(),vertical(),numbered()
Drag & Drop Extensions
- Draggable wrappers:
asDraggable(),asLongPressDraggable(),asDragTarget() - Drag handle:
withDragHandle()with custom icon and color - Reorderable lists:
reorderableList(),reorderableGrid()forList<Widget> AwDragDrophelpers:reorderableList(),dropZone()
Internationalization (RTL) Extensions
- Directionality:
rtl(),ltr(),directional() - Directional spacing:
paddingStart(),paddingEnd(),paddingStartEnd(),marginStart(),marginEnd() - Directional alignment:
alignStart(),alignEnd() - Text direction:
textAlignStart(),textAlignEnd()on Text AwI18nhelpers:isRtl(),directionOf(),responsive()
Platform Adaptive Extensions
- Platform switching:
adaptive(),cupertinoOnly(),materialOnly() AwAdaptivehelpers:button(),switchControl(),slider(),indicator(),textField(),alertDialog(),scaffold()
Changed #
- Updated extension count from 1200+ to 1500+
- Added comprehensive test coverage for all 7 new extension categories
- Full 100% Flutter UI coverage achieved across 41 source files
3.0.0 - 2026-03-22 #
Added - Component & Utility Extensions #
Form Input Extensions
- Input decorators:
inputRounded(),inputBordered(),inputFilled(),inputUnderline() - Validation states:
inputError(),inputSuccess() - Form group builders:
formVertical(),formHorizontal() AwInputstatic helpers:text(),password(),email(),search(),multiline(),phone(),number()
Image Extensions
- Image shapes:
imgCircle(),imgRounded(),imgSquare() - Image effects:
imgBordered(),imgShadow(),imgOverlay(),imgGrayscale(),imgSepia() - Size presets:
imgXs(),imgSm(),imgMd(),imgLg(),imgXl() AwImagestatic helpers:avatar(),thumbnail(),placeholder()
Shimmer & Skeleton Extensions
- Loading shimmer:
skeleton(),shimmerLoading() AwSkeletonpresets:text(),circle(),box(),card(),listTile(),list(),grid()
Badge & Chip Extensions
- Badge overlays:
withBadge(),withDotBadge(),withStatusDot() - Text badges:
badge(),badgeCircle(),badgePrimary(),badgeSuccess(),badgeDanger(),badgeOutline() - Chips:
chip(),chipFilled(),chipDeletable() AwBadgehelpers:status(),chipGroup()
Avatar Extensions
- Avatar shapes:
avatarCircle(),avatarRounded() - Size presets:
avatarXs(),avatarSm(),avatarMd(),avatarLg(),avatarXl() AwAvatarhelpers:initials(),icon(),group(),withStatus()
Dialog & Sheet Extensions
- Dialog wrappers:
asDialog(),asBottomSheet() AwDialoghelpers:alert(),confirm(),confirmDelete(),snackbar(),loading()
Divider Extensions
- Widget dividers:
withDividerBelow(),withDividerAbove() AwDividerpresets:thin(),standard(),thick(),bold(),dashed(),dotted(),withText(),gradient(),vertical(),space(),spaceH()
List Tile Presets
- Tile styles:
listTileCard(),listTileBordered(),listTileFlat(),listTileInk(),listTileSelected() AwListTilebuilders:simple(),settings(),contact(),notification()
Clip & Shape Extensions
- Basic clips:
clipOval(),clipRounded(),clipRect(),clipRoundedOnly() - Geometric clips:
clipTriangle(),clipDiamond(),clipHexagon(),clipStar(),clipPentagon(),clipOctagon(),clipPolygon() - Special clips:
clipCircleNotch(),clipCustom() - Decorative shapes:
shapeCircle(),shapeSquare(),shapePill()
Scroll Effect Extensions
- Scroll behaviors:
scrollWithFade(),scrollBouncing(),scrollClamping(),scrollNever(),scrollSnap() - List scrolling:
horizontalScroll(),verticalScroll(),chipScroll(),pageView()with dot indicators
Tooltip & Popup Extensions
- Tooltips:
withTooltip(),withStyledTooltip(),withDarkTooltip(),withLightTooltip(),withRichTooltip() - Popups:
withPopupMenu(),withPopover(),withInfoTooltip() AwPopupItemhelpers:text(),danger(),divider()
Accessibility Extensions
- Semantic labels:
semanticLabel(),semanticButton(),semanticImage(),semanticHeader(),semanticLink(),semanticTextField() - Semantic properties:
semanticChecked(),semanticSelected(),semanticToggled(),semanticEnabled(),semanticHidden(),semanticLiveRegion(),semanticSortKey() - Exclude/merge:
excludeSemantics(),mergeSemantics(),blockSemantics() - Actions:
semanticOnTap(),semanticOnLongPress(),semanticScrollable() - Hints:
semanticHint(),semanticValue(),semanticAdjustable() - Focus:
focusable(),focusOrder(),focusTraversalGroup() AwA11yutilities:isHighContrast(),isBoldText(),isReduceMotion(),textScale(),isScreenReaderActive()
Changed #
- Updated extension count from 800+ to 1200+
- Added comprehensive test coverage for all 12 new extension categories
2.0.0 - 2025-12-15 #
Added - Advanced Features #
Responsive Extensions
- Breakpoint system:
xs,sm,md,lg,xl,xxl - Show/hide utilities:
showOnXs(),hideOnMd(),lgAndUp(), etc. - Responsive padding/width:
responsivePadding(),responsiveWidth() ResponsiveBuilderwidget for custom responsive layouts
Grid System
- CSS Grid-like layout:
gridCols1()-gridCols6(),gridAutoFit(),gridAutoFill() - Responsive grid:
gridResponsive(xsCols, smCols, mdCols, lgCols) - Grid item extensions:
gridColSpan(),gridRowSpan(),gridArea() AwGridandAwResponsiveGridwidgets
Gradient Extensions
- Linear gradients:
gradientToR(),gradientToL(),gradientToT(),gradientToB() - Radial gradient:
gradientRadial() - Sweep gradient:
gradientSweep() - Preset gradients:
gradientSunset(),gradientOcean(),gradientForest(),gradientNeon(),gradientRose(),gradientGold() - Gradient text support
Animation Extensions
- Entry animations:
fadeIn(),fadeOut(),slideInLeft(),slideInRight(),slideInUp(),slideInDown(),scaleIn() - Continuous animations:
spin(),bounce(),pulse(),shake() - Interactive animations:
tapScale(),tapOpacity(),hoverScale(),hoverElevate()
Dark Mode Extensions
- Theme-aware backgrounds:
themeBackground(),darkBgGray900(),lightBgWhite() - Theme-aware text:
darkTextWhite(),lightTextGray900() - Theme widgets:
ThemeAware,ThemeContainer,ThemeText,ThemeIcon
Gesture Extensions
- Tap handlers:
onTap(),onDoubleTap(),onLongPress() - Hover callbacks:
onHover() - Cursor utilities:
cursorPointer(),cursorGrab(),cursorText() - Drag support:
draggable(),swipeToDelete() - Scroll utilities:
scrollable(),scrollX(),scrollY()
Typography Presets
- Headings:
h1()-h6() - Body text:
bodyLarge(),bodyBase(),bodySmall() - Labels:
label(),labelLarge(),labelSmall() - Display:
displayLarge(),displayMedium(),displaySmall() - Special:
caption(),quote(),code(),overlineText() - Text transform:
uppercase(),lowercase(),capitalize()
Button Presets
- Primary buttons:
btnPrimary(),btnPrimaryLg(),btnPrimarySm() - Variants:
btnSecondary(),btnOutline(),btnGhost(),btnDanger(),btnSuccess(),btnWarning() - Special:
btnPill(),btnLink(),btnGradient(),btnLoading(),btnDisabled() - Icon buttons:
btnIconCircle(),btnIconFilled(),btnIconOutline() AwButtonwidget with variants and sizes
Card Presets
- Basic cards:
card(),cardBordered(),cardElevated(),cardFlat() - Interactive:
cardHoverable(),cardClickable() - Colored:
cardPrimary(),cardDanger(),cardSuccess(),cardWarning(),cardInfo() - Gradient:
cardGradient() - Special:
cardWithHeader(),cardWithFooter(),cardGlass(),cardLeftBorder() AwCardwidget
Custom Value Extensions
- Custom colors:
bg(),bgHex('#0f172a'),bgColor(0xFF0f172a),bgRgb(),bgRgba() - Custom text colors:
textColor(),textHex(),textRgb() - Custom spacing:
pCustom(),mCustom(),pxCustom(),pyCustom(),pTRBL() - Custom sizing:
wCustom(),hCustom(),wPercent(),hPercent(),square() - Custom decoration:
roundedCustom(),borderCustom(),borderHex(),shadowCustom() - Custom typography:
fontSize(),fontW(),letterSpacingCustom(),lineHeight() - Custom transform:
rotateCustom(),scaleCustom(),translateCustom() AwCustomutility class for creating colors, padding, radius, shadows
Advanced Flex Extensions
- Flex utilities:
flexRow(),flexCol(),flexWrap(),flexReverse() - Justify content:
justifyStart(),justifyEnd(),justifyCenter(),justifyBetween(),justifyAround(),justifyEvenly() - Align items:
itemsStart(),itemsEnd(),itemsCenter(),itemsStretch() - Flex item:
flexGrow(),flexShrink(),flexNone(),flexInitial()
Changed #
- Updated extension count from 500+ to 800+
- Improved documentation with new examples
1.0.2 - 2024-12-10 #
Improved #
- Added dartdoc comments to 230+ public API elements for better documentation coverage
- Fixed Dart formatting issues across all source files
- Fixed
sized_box_for_whitespacelint warning in example
Documentation #
- ColorExtensions: All 113 background color methods now have dartdoc comments
- TextColorExtensions: All 48 text color methods now have dartdoc comments
- SpacingExtensions: All 74 padding/margin methods now have dartdoc comments
- Documentation coverage increased from 8.8% to 20%+
1.0.1 - 2024-12-01 #
Changed #
- Removed Tailwind CSS branding from package description and documentation
- Updated package description to focus on Awaitware UI Utilities as a standalone toolkit
- Improved example app with comprehensive UI demonstrations
- Updated all documentation to reflect modern utility-first approach
Documentation #
- Refreshed README with updated branding
- Updated library documentation comments
- Enhanced example application
1.0.0 2024-XX-XX #
Added #
Core Features
- 500+ extension methods for Flutter widgets inspired by Tailwind CSS
- Chainable API for clean, readable UI code
- Zero dependencies (only requires Flutter SDK)
- Full Dart type safety with IDE autocomplete support
Extension Categories
1. Spacing Extensions (90+ methods)
- Padding utilities:
p0()throughp96()with directional variants (px,py,pt,pr,pb,pl) - Margin utilities:
m0()throughm96()with directional variants (mx,my,mt,mr,mb,ml) - Auto margin for centering:
mxAuto(),myAuto()
2. Color Extensions (200+ methods)
- Background colors for all Material color shades:
bgRed50()throughbgRed900(), etc. - Text colors for all Material color shades:
textRed50()throughtextRed900(), etc. - Support for: Red, Pink, Purple, Deep Purple, Indigo, Blue, Light Blue, Cyan, Teal, Green, Light Green, Lime, Yellow, Amber, Orange, Deep Orange, Brown, Grey, Blue Grey
- Special colors:
bgBlack(),bgWhite(),bgTransparent()
3. Typography Extensions (60+ methods)
- Font sizes:
textXs()(12px),textSm()(14px),textBase()(16px),textLg()(18px),textXl()(20px),text2Xl()(24px),text3Xl()(30px),text4Xl()(36px),text5Xl()(48px) - Font weights:
fontThin(),fontLight(),fontNormal(),fontMedium(),fontSemibold(),fontBold(),fontBlack() - Text alignment:
textLeft(),textCenter(),textRight(),textJustify() - Text decoration:
underline(),lineThrough(),noDecoration() - Text overflow:
ellipsis(),clip(),fade() - Letter spacing:
trackingTighter(),trackingNormal(),trackingWider(), etc. - Line height:
leadingNone(),leadingTight(),leadingNormal(),leadingLoose() - Font styles:
italic(),notItalic()
4. Sizing Extensions (50+ methods)
- Width utilities:
w0()throughw96(),wFull(),wScreen() - Height utilities:
h0()throughh96(),hFull(),hScreen() - Size utilities:
size0()throughsize96()(equal width and height) - Icon sizes:
size16(),size24(),size32(),size48(),size64() - Max width:
maxWXs(),maxWSm(),maxWMd(),maxWLg(),maxWXl(), etc. - Max height:
maxHScreen(),maxHFull() - Min width/height:
minWFull(),minHFull(),minHScreen()
5. Decoration Extensions (40+ methods)
- Border radius:
rounded(),roundedSm(),roundedMd(),roundedLg(),roundedXl(),rounded2Xl(),rounded3Xl(),roundedFull() - Directional radius:
roundedTSm(),roundedRLg(), etc. - Borders:
border(),border2(),border4(),border8() - Border colors:
borderRed600(),borderBlue600(), etc. (all Material colors) - Directional borders:
borderT(),borderR(),borderB(),borderL() - Box shadows:
shadowSm(),shadow(),shadowMd(),shadowLg(),shadowXl(),shadow2Xl(),shadowNone() - Opacity:
opacity0(),opacity25(),opacity50(),opacity75(),opacity100()
6. Layout Extensions (30+ methods)
- Alignment:
center(),alignTopLeft(),alignCenter(), etc. - Expansion:
expanded(),flexible(),expanded2(),expanded3() - Aspect ratios:
aspectSquare(),aspectVideo(),aspect16x9(),aspect4x3(), etc. - Constraints:
constrained(),unconstrained() - Scrolling:
scrollable(),scrollableX(),scrollableY() - Fitted box:
fitted(),contain(),cover(),fill(),scaleDown() - Clip behavior:
clipRect(),clipRRect(),clipOval(),clipPath()
7. Flex Extensions (20+ methods)
- List to Row:
row(),rowReverse() - List to Column:
column(),columnReverse() - List to Stack:
stack() - List to Wrap:
wrap(),wrapSpacing() - Gap utilities:
gap(),gapV(),gapH() - Main axis alignment:
spaceBetween(),spaceAround(),spaceEvenly(),mainStart(),mainEnd(),mainCenter() - Cross axis alignment:
crossStart(),crossEnd(),crossCenter(),crossStretch()
8. Transform Extensions (15+ methods)
- Rotation:
rotate45(),rotate90(),rotate180(),rotate270() - Scaling:
scale50(),scale75(),scale90(),scale95(),scale100(),scale105(),scale110(),scale125(),scale150() - Translation:
translateX(),translateY() - Flipping:
flipH(),flipV()
9. Positioning Extensions (10+ methods)
- Absolute positioning:
absolute(),positioned() - Position utilities:
top0(),right0(),bottom0(),left0() - Fill positioning:
positionFill(),inset0()
10. Visibility Extensions (6+ methods)
- Conditional visibility:
show(),hide() - Opacity-based:
visible(),invisible() - Offstage:
offstage() - Pointer events:
ignorePointer(),absorbPointer()
Helper Class (aw)
Widget Creators
aw.text()- Create Text widgetaw.container()- Create Container widgetaw.box()- Container with childaw.icon()- Create Icon widget
Layout Builders
aw.row()- Create Rowaw.column()- Create Columnaw.stack()- Create Stackaw.wrap()- Create Wrap
Spacing Helpers
aw.spaceV()- Vertical spacingaw.spaceH()- Horizontal spacingaw.space1()throughaw.space8()- Tailwind-scale spacing
Pre-styled Components
aw.button()- Styled buttonaw.card()- Card with shadowaw.divider()- Horizontal divideraw.verticalDivider()- Vertical divider
Images
aw.imageNetwork()- Network imageaw.imageAsset()- Asset image
Utility Helpers
aw.empty()- Empty SizedBoxaw.expanded()- Expanded widgetaw.center()- Center widgetaw.padding()- Padding widget
Documentation #
- Comprehensive README.md with examples
- Quick Start Guide
- Installation Guide
- Contributing Guide
- Publishing Checklist
- Complete API reference with 500+ utilities documented
Examples #
- Working example app demonstrating key features
- Code examples for all extension categories
Performance #
- Lightweight extensions with minimal overhead
- Optimized for production use
- Zero runtime dependencies
Developer Experience #
- Full IDE autocomplete support
- Type-safe API
- IntelliSense-friendly
- Clear error messages