# material_ui 1.5.0

The official Flutter Material UI Library, implementing Google's Material Design design system.
Showing cached metadata; upstream refresh unavailable.



## Installing
```
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.com
flutter pub add 'material_ui:1.5.0'
```
Published: 2026-09-28T16:34:00.787845Z
Expected archive SHA-256: 32d98f11cf5942a095a8c3e01b03e4de3b17941437713dcf36b1088fb62e23d2

Available in cache; verification: upstream_checksum
## Direct dependencies
- collection: ^1.19.1
- cupertino_ui: ^1.0.0
- flutter: map[sdk:flutter]
- flutter_localizations: map[sdk:flutter]
- intl: ^0.20.2
- material_color_utilities: ^0.13.0
- vector_math: ^2.2.0

## Package README (untrusted upstream documentation)
# material_ui

The official Flutter Material Design library, implementing Google's [Material
Design](https://m3.material.io/) design system for Flutter applications.

`material_ui` provides a complete, modern suite of visual components, motion,
typography, color system, and theming tools to build beautiful and accessible
user interfaces on all screen sizes.

See also the
[`cupertino_ui`](https://github.com/flutter/packages/tree/main/packages/cupertino_ui)
package, which is Flutter's official iOS- and macOS-style design library.

## New to the package?

Install the package with the following command:

```dart
flutter add material_ui
```

See Flutter's main [getting started
guide](https://flutter.dev/getting-started/) for information about using Flutter
and `material_ui`.

## Migrating existing code to this package

The standalone `material_ui` package was previously built directly into the core
Flutter framework as `package:flutter/material.dart`. It has been decoupled from
the [flutter/flutter](https://github.com/flutter/flutter) repository into its
new home here in `flutter/packages`.

Follow the steps below to migrate:

### Step 1: Migrate imports

We've included a data driven Dart fix to help users migrate. Simply run the
following command:

```sh
dart fix --apply --code=migrate_design_widgets
```

This performs the equivalent of adding `material_ui` to your project and
changing imports of `package:flutter/material.dart` to
`package:material_ui/material_ui.dart`.

### Step 2: Migrate localizations (if needed)

If you are not currently using the `GlobalMaterialLocalizations` or
`GlobalCupertinoLocalizations` classes from flutter/flutter's
`flutter_localizations` package, then you are already good to go. For those that
do need to migrate off of these classes, simply use the new versions of these
classes from `material_ui` and `cupertino_ui`, respectively.

A typical app can use the following localization delegate from `material_ui` to
cover all of the localization strings in Flutter, Material, and Cupertino:

```dart
  localizationsDelegates: GlobalMaterialLocalizations.delegates,
```

### Step 3: Bridge legacy dependencies (if needed)

If your app uses third-party packages or subtrees that still import and rely on
`package:flutter/material.dart`, use `MaterialUiCompatibilityBridge` to bridge
`ThemeData` and `MaterialLocalizations` so legacy widgets resolve correctly
within modern widget trees.

Wrap your app using `MaterialApp.builder`:

```dart
import 'package:material_ui/material_ui.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      builder: (BuildContext context, Widget? child) {
        return MaterialUiCompatibilityBridge(child: child!);
      },
      home: const HomeScreen(),
    );
  }
}
```

You can also wrap individual subtrees that contain legacy package widgets:

```dart
Scaffold(
  appBar: AppBar(title: const Text('Modern Screen')),
  body: MaterialUiCompatibilityBridge(
    child: LegacyPackageWidget(),
  ),
)
```

---

## Features

The `material_ui` package contains everything you need to create a
fully-featured Material app, such as:

* **App Structure & Navigation**: `MaterialApp`, `Scaffold`, `AppBar`,
`NavigationBar`, `BottomSheet`, `TabBar`, `SearchAnchor`, `SearchBar`, `Dialog`
* **Buttons & Interaction**: `ElevatedButton`, `TextButton`, `IconButton`,
`FloatingActionButton`, `SegmentedButton`, `InkWell`, `MenuBar`
* **Inputs & Selection**: `TextField`, `Checkbox`, `Radio`, `Switch`, `Slider`,
`DropdownMenu`, `DatePicker`, `TimePicker`
* **Display & Feedback**: `Card`, `Chip`, `ListTile`, `Badge`, `Divider`,
`ProgressIndicator`, `SnackBar`, `Tooltip`, `CarouselView`, `VerticalDivider`
* **Theming & Color**: `ThemeData`, `ColorScheme`, `TextTheme`, dynamic color
generation, Material 3 design tokens, typography, and motion easing curves
* **Internationalization**: `MaterialLocalizations` and
`GlobalMaterialLocalizations` for multi-locale support

## Changelog
See the
[Changelog](https://github.com/flutter/packages/blob/main/packages/material_ui/CHANGELOG.md)
for a list of new features and breaking changes.

## Documentation & Resources

* [Material Design 3 Specification](https://m3.material.io/)
* [Flutter Material Widget Catalog](https://docs.flutter.dev/ui/widgets/material)
* [API Reference](https://pub.dev/documentation/material_ui/latest/)
* [Issue Tracker](https://github.com/flutter/flutter/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22p%3A%20material_ui%22)

## Changelog
## 1.5.0

- Adds Material 3 Expressive support for IconButton.
- Exposes `selected` state on `Autocomplete` option semantics.
- Wraps `DrawerHeader` in `Semantics(header: true)`.
- Adds `ignorePointer` to `TooltipThemeData` for WCAG 1.4.13 Hoverable support.
- Fixes decorations on `MenuItemButton.leadingIcon`, such as `Badge`, being clipped to the icon's bounds in vertically expanding menus.
- Introduces labelTextDirection property to InputDecoration.
- Adds support for standard, medium, and high contrast Material 3 color scheme baselines.
- Fixes LocalHistoryEntry leak when double tapping Drawer scrim

## 1.4.0

- Updates minimum supported SDK version to Flutter 3.47/Dart 3.13.
- Adds sortIconBuilder parameter to DataTable, PaginatedDataTable, and DataTableThemeData for custom sorting indicators.
- Fix `PopupMenuButton` not announcing button semantics (enabled state, expanded state) when built with a `child` instead of the default icon.
- Fixes `DatePickerThemeData.todayBorder` color being overridden by `todayForegroundColor` in the year selector.
- Adds an alternative keyboard input method for RangeSlider in NavigationMode.directional.

## 1.3.0

- Adds `@awaitNotRequired` annotations to asynchronous functions that do not need to be awaited.
- Adds an option for `MaterialPageRoute` and `MaterialPage` to opt out of introducing a semantics route scope.
- Fixes SliverGeometry maxPaintExtent assertion in CarouselView.weighted
- Corrects the Material 3 default style documentation for FilledButton to match its implementation.
- Adds support for customizing date input formatters via
  `CalendarDelegate.keyboardInputFormatters`, allowing custom date input
  behavior in the Material date picker.
- Adds a semanticLabel to MenuAnchor for the expanded menu overlay.

## 1.2.0

- Adds the `StyleVariant` enum defining the Material 3 and Material 3 Expressive style variants.

## 1.1.1

- Constrains Slider and RangeSlider value indicator labels to the screen width, truncating with an ellipsis instead of clipping.
- Prevents stale asynchronous suggestions from replacing newer `SearchAnchor` results.
- Fix RangeSlider thumb overlay remaining visible after touch interaction

## 1.1.0

- Add missing Widget of the Week videos to widget API docs.
- Exposes ink_sparkle shader asset in pubspec.yaml and removes stretch_effect shader.
- Fix Typo in Readme
- Fixes typos in library code and tests.
- SearchAnchor overlay expands to full-screen on viewport size change (e.g., on device rotation).
- Fixes https://github.com/flutter/flutter/issues/186154.

## 1.0.1

- Updates cupertino_ui dependency constraint to ^1.0.0.

## 1.0.0

- README updated for the full release of material_ui.
- Promotes the pre-release to 1.0.0.

## 0.0.3+1

- Replace unresolvable doc imports
- Added a main.dart example for the Pub "Example" tab that reference a curated
list of existing examples.

## 0.0.3

- Fix API doc by clearing unsupported directives introduced by macros.
- Fix API doc references.
- Adds MaterialUiCompatibilityBridge for legacy flutter/material.dart compatibility.

## 0.0.2

- Copies over all Material code from flutter/flutter.
- Copies over Material localizations from flutter/flutter's
  flutter_localizations package.
- Unpins material_color_utilities.
- Migrates API doc samples and formatting.
- Updates minimum supported SDK version to Flutter 3.44/Dart 3.12.

## 0.0.1

* Initial setup of the `material_ui` package, preparing for decoupling Material widgets from the Flutter framework.







 
