adaptive_kit 2.0.1 copy "adaptive_kit: ^2.0.1" to clipboard
adaptive_kit: ^2.0.1 copied to clipboard

The Tailwind CSS of Flutter. Zero-config adaptive UI toolkit with responsive breakpoints, adaptive widgets, design tokens, animated transitions, slivers, and utility extensions.

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.

2.0.1 - 2026-02-27 #

Fixed #

  • Fixed angle bracket in dartdoc comment for pub.dev analysis
  • Removed unnecessary dart:ui import in test_helpers.dart
  • 160/160 pub points compliance

2.0.0 - 2026-02-27 #

Added #

  • SmartApp - Zero-config MaterialApp wrapper that auto-configures SmartUi

    • SmartApp for Navigator-based apps
    • SmartApp.router for Router-based apps (go_router, auto_route, etc.)
    • SmartCupertinoApp and SmartCupertinoApp.router for Cupertino apps
    • Automatically wraps with SmartUi via MaterialApp.builder
  • SmartImage - Responsive image widget with breakpoint-specific assets

    • Different images per breakpoint (mobile, tablet, desktop, etc.)
    • SmartImage.asset() for asset images with path strings
    • SmartImage.network() for network images with URLs
    • SmartDecorationImage for responsive background images
    • Cascading resolution (falls back to smaller breakpoint images)
  • SmartForm - Responsive form layout with automatic column adjustment

    • Auto 1-column on mobile, 2-column on tablet, 3-column on desktop
    • SmartFormField with span support for multi-column fields
    • SmartFormRow for custom row layouts
    • SmartFormSection with title, description, and grouped fields
    • Customizable column counts per breakpoint
  • SmartSliver widgets - Responsive slivers for CustomScrollView

    • SmartSliverGrid with breakpoint-based column counts
    • SmartSliverGrid.builder for lazy grid building
    • SmartSliverGridExtent for max extent-based grids
    • SliverSmartPadding for responsive sliver padding
    • SliverSmartVisible for breakpoint-conditional slivers
    • SliverSmartList with different builders per breakpoint
  • SmartWrap - Responsive Wrap with maxItemsPerRow per breakpoint

    • SmartWrap.spaced() with token-based spacing
    • fillRow option to expand items to fill available width
    • SmartChipWrap for chip/tag layouts with selection support
  • Animated Breakpoint Transitions - Smooth transitions when breakpoints change

    • SmartTransition enum: none, fade, fadeSlide, crossFade, scale
    • transition, transitionDuration, transitionCurve on SmartLayout
    • transitionBuilder for custom animations on SmartLayout
    • Same transition options on SmartVisible
    • AnimatedSwitcher integration with proper keying
  • SmartTheme - Breakpoint-aware design token system

    • SmartTheme widget for providing responsive theme data
    • SmartThemeData with typography, spacing, padding, radius, and layout tokens
    • Pre-built themes: SmartThemeData.mobile, .tablet, .desktop
    • SmartThemeData.lerp() for animated theme transitions
    • Custom tokens via customTokens map and token<T>() accessor
    • context.smartTheme extension for easy access
  • SmartSafeArea - Responsive safe area wrapper

    • Per-breakpoint control of safe area edges
    • SmartSafeArea.mobileOnly() - safe area only on mobile
    • SmartSafeArea.topOnlyMobile() - top safe area only on mobile
    • SliverSmartSafeArea for slivers
    • New context extensions: safeAreaTop, safeAreaBottom, safeAreaLeft, safeAreaRight
    • safeAreaHorizontal, safeAreaVertical, hasSafeAreaPadding, hasTopSafeArea, hasBottomSafeArea
  • Golden Test Helpers - Utilities for testing responsive widgets

    • BreakpointTestConfig for defining test configurations
    • SmartTestConfigs with pre-built configs (watch, mobile, tablet, desktop, tv)
    • createSmartTestWidget() helper for widget tests
    • createSmartTestWidgetForConfig() for config-based tests
    • testSmartBreakpoints() template for multi-breakpoint testing
    • BreakpointCapture widget for capturing current breakpoint in tests
    • BreakpointDebugOverlay for visual debugging
  • New Context Extensions

    • context.adaptive<T>(material:, cupertino:) - platform-based value selection
    • context.adaptiveWidget(material:, cupertino:) - platform-based widget selection
    • context.showOnly(breakpoints:, child:) - show widget on specific breakpoints
    • context.hideOn(breakpoints:, child:) - hide widget on specific breakpoints
    • context.bp<T>() - shorter alias for responsive value selection
    • context.mobileOr<T>(mobile:, other:) - mobile vs non-mobile value
    • context.desktopOr<T>(desktop:, other:) - desktop vs non-desktop value

Changed #

  • BREAKING: Minimum Flutter version is now 3.10.0
  • Improved documentation throughout all public APIs
  • Enhanced cascading logic for better breakpoint fallbacks

Fixed #

  • Consistent patterns across all responsive widgets
  • Better null safety handling in cascading resolution

1.1.3 - 2025-02-24 #

Fixed #

  • Fixed all deprecated API warnings for Flutter 3.32+ (activeColor, groupValue, onChanged in SmartRadio)
  • Added big dashboard button to README
  • Full 160/160 pub points compliance

1.0.2 - 2025-02-24 #

Added #

  • Interactive Dashboard Example App
    • 8 demo pages showcasing all package features
    • Home/Overview with feature grid and quick stats
    • Breakpoints Demo with live breakpoint detection
    • Responsive Layout Demo with SmartLayout examples
    • Responsive Grid Demo with interactive sliders
    • Adaptive Widgets Demo with all SmartButton, SmartSwitch, SmartDialog variants
    • Design Tokens Demo with typography, spacing, and radius scales
    • Visibility Demo with SmartVisible and shortcut widgets
    • Extensions Demo with context, widget, and number extensions
    • Dark/Light theme toggle
    • Responsive design using adaptive_kit itself

Changed #

  • README.md completely rewritten
    • Added comparison table with other packages
    • Added before/after code examples
    • Added comprehensive feature documentation
    • Added dashboard preview section
    • Improved code examples with adaptive_kit naming

Fixed #

  • Updated all code examples to use adaptive_kit instead of smartui
  • Fixed import paths in documentation

1.0.1 - 2025-02-24 #

Fixed #

  • Added web support with conditional dart:io imports
  • Fixed repository and homepage URLs to point to correct GitHub repo
  • Fixed lint warnings for pub.dev compliance
  • Updated SDK constraint to ^3.7.0

1.0.0 - 2025-02-24 #

Changed #

  • Package renamed from smartui to adaptive_kit for pub.dev availability
  • Complete API rewrite with improved design
  • Zero dependencies (only Flutter SDK)
  • Comprehensive test coverage

Added #

  • Core Module

    • SmartBreakpoint enum with watch, mobile, tablet, desktop, and tv breakpoints
    • SmartBreakpoints class for customizable breakpoint configuration
    • SmartUi widget for global configuration with InheritedWidget
    • SmartPlatform enum and platform detection utilities
  • Responsive Module

    • context.responsive<T>() extension for breakpoint-based values
    • context.responsiveInt(), context.responsiveDouble(), context.responsiveBool()
    • context.responsivePadding() for responsive EdgeInsets
    • SmartLayout widget for breakpoint-driven layout switching
    • SmartGrid and SmartCol for 12-column responsive grid system
    • ResponsiveBuilder widget with comprehensive breakpoint information
    • BreakpointBuilder for simple breakpoint access
    • BreakpointObserver that only rebuilds on breakpoint changes
    • SmartVisible widget for conditional visibility by breakpoint
    • MobileOnly, TabletOnly, DesktopOnly convenience widgets
    • HideOnMobile, HideOnDesktop convenience widgets
  • Tokens Module

    • SmartSpacing constants (zero, xs, sm, md, lg, xl, xxl)
    • SmartSpacingTokens for custom spacing configuration
    • SmartTypography scale with 15 text styles (display, headline, title, body, label)
    • SmartRadius tokens (none, xs, sm, md, lg, xl, xxl, full)
    • RadiusSize enum with .borderRadius and .value getters
  • Widgets Module

    • SmartPadding with .all(), .symmetric(), .only(), .responsive() constructors
    • SmartHorizontalPadding, SmartVerticalPadding convenience widgets
    • SmartGap with .xs(), .sm(), .md(), .lg(), .xl(), .xxl(), .responsive()
    • VGap, HGap for vertical and horizontal gaps
    • SmartText with .responsive() constructor for breakpoint-based typography
    • DisplayText, HeadlineText, BodyText, LabelText convenience widgets
    • SmartContainer with .sm(), .md(), .lg(), .xl(), .xxl(), .fluid(), .responsive()
    • ResponsivePaddedContainer, CenteredContent convenience widgets
    • SmartRow for rows with token-based spacing
  • Adaptive Module

    • SmartScaffold with auto-switching navigation (bottom nav on mobile, rail on tablet, drawer on desktop)
    • SmartAppScaffold for simple scaffold without navigation
    • SmartDestination for navigation destinations with badges
    • SmartNavigation for standalone adaptive navigation
    • SmartNavItem for navigation items
    • SmartButton with .filled(), .text(), .outlined() variants
    • SmartIconButton for icon buttons
    • SmartSwitch for adaptive toggle switches
    • SmartCheckbox for adaptive checkboxes
    • SmartRadio<T> for adaptive radio buttons
    • showSmartDialog() for adaptive alert dialogs
    • showSmartConfirmDialog() for adaptive confirmation dialogs
    • showSmartBottomSheet() for adaptive bottom sheets
    • showSmartActionSheet() for adaptive action sheets
    • SmartDialogAction, SmartSheetAction for dialog/sheet actions
    • SmartIndicator for circular progress (determinate and indeterminate)
    • SmartLinearIndicator for linear progress
    • SmartLoadingOverlay for loading states
    • SmartRefreshIndicator for pull-to-refresh
    • SmartTabBar for adaptive tab bars
    • SmartBreadcrumbs for navigation breadcrumbs
  • Extensions Module

    • Context extensions:
      • Screen: .screenWidth, .screenHeight, .screenSize, .devicePixelRatio, .textScaleFactor
      • Orientation: .isPortrait, .isLandscape, .orientation, .aspectRatio
      • Breakpoints: .breakpoint, .isWatch, .isMobile, .isTablet, .isDesktop, .isTv
      • Breakpoint ranges: .isMobileOrSmaller, .isTabletOrLarger, .isDesktopOrLarger
      • Platform: .platform, .isAndroid, .isIOS, .isMacOS, .isWindows, .isLinux, .isWeb
      • Platform groups: .isMobilePlatform, .isDesktopPlatform, .isApplePlatform
      • Design system: .usesMaterial, .usesCupertino
      • Safe areas: .safeAreaPadding, .viewPadding, .viewInsets, .isKeyboardVisible
      • Config: .smartUiConfig, .breakpoints
    • Widget extensions:
      • Visibility: .showOnly(), .hideOn(), .showOnMobile(), .showOnTablet(), .showOnDesktop(), .hideOnMobile(), .hideOnDesktop()
      • Padding: .responsivePadding(), .withPadding(), .withSymmetricPadding(), .withPaddingOnly(), .padded(), .paddedAll(), .paddedSymmetric(), .paddedHorizontal(), .paddedVertical()
      • Layout: .centered(), .expanded(), .flexible(), .sized(), .constrained(), .aligned()
      • Decoration: .clipped(), .decorated(), .opacity()
      • Gestures: .onTap(), .inkWell()
      • Safe area: .safeArea()
      • Scrolling: .scrollable()
    • Number extensions:
      • Scaled sizing: .w, .h, .sp (with SmartSize initialization)
      • Screen percentage: .sw, .sh
      • Spacing: .horizontalSpace, .verticalSpace, .horizontalSpaceScaled, .verticalSpaceScaled
      • Padding: .paddingAll, .paddingHorizontal, .paddingVertical, .paddingLeft, .paddingRight, .paddingTop, .paddingBottom
      • Decoration: .borderRadius, .radius
      • Duration: .ms, .seconds, .minutes

Documentation #

  • Comprehensive README with comparison table and code examples
  • Interactive example app with 8 demo pages
  • Full API documentation for all public classes and methods

0.1.0 - 2024-01-01 #

Added #

  • Initial release with basic responsive utilities
  • Basic breakpoint detection
  • Simple responsive widgets
2
likes
160
points
323
downloads

Publisher

unverified uploader

Weekly Downloads

The Tailwind CSS of Flutter. Zero-config adaptive UI toolkit with responsive breakpoints, adaptive widgets, design tokens, animated transitions, slivers, and utility extensions.

Repository (GitHub)
View/report issues

Topics

#responsive #adaptive #ui #layout #widget

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on adaptive_kit