# openflutter/flutter_screenutil

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/openflutter-flutter-screenutil).**

4,030 stars · 509 forks · Dart · Apache-2.0

## Links

- GitHub: https://github.com/OpenFlutter/flutter_screenutil
- Homepage: https://pub.dartlang.org/packages/flutter_screenutil
- awesome-repositories: https://awesome-repositories.com/repository/openflutter-flutter-screenutil.md

## Topics

`dart` `flutter` `scale` `screen` `screenutil`

## Description

flutter_screenutil is a responsive UI framework and adaptive layout tool for Flutter. It provides a system for scaling layout dimensions and fonts based on a reference design to ensure consistent proportions across different screen resolutions and devices.

The toolkit functions as a screen metrics provider that retrieves real-time device properties, including screen width, height, pixel density, and safe area dimensions. It specifically handles layout adaptation during device orientation changes and split-screen mode updates.

The framework covers adaptive typography management, layout dimension scaling, and screen metrics monitoring. It includes mechanisms to control UI rebuilds during screen resizing and applies scaling limits to maintain visual integrity on very large or small displays.

## Tags

### User Interface & Experience

- [Reference-Based Scaling](https://awesome-repositories.com/f/user-interface-experience/hidpi-dimension-scaling/reference-based-scaling.md) — Calculates widget sizes by multiplying design-draft dimensions by a ratio derived from the current screen size.
- [Adaptive Typography Tools](https://awesome-repositories.com/f/user-interface-experience/adaptive-typography-tools.md) — Automatically adjusts font sizes based on screen dimensions and system zoom settings to maintain readability.
- [Font Size Range Clampers](https://awesome-repositories.com/f/user-interface-experience/component-sizing-utilities/link-sizing/size-retrievers/font-size-presets/font-size-range-clampers.md) — Scales text sizes based on screen metrics while applying minimum and maximum pixel bounds to prevent extreme sizing.
- [Device Metrics Retrieval](https://awesome-repositories.com/f/user-interface-experience/device-metrics-retrieval.md) — Provides real-time retrieval of screen width, height, pixel density, and safe area dimensions to drive responsive layout scaling. ([source](https://github.com/OpenFlutter/flutter_screenutil/blob/master/CHANGELOG.md))
- [Screen-Metric Based Font Scaling](https://awesome-repositories.com/f/user-interface-experience/dynamic-font-scalings/width-adaptive-font-scaling/screen-metric-based-font-scaling.md) — Scales text based on screen dimensions and system zoom settings using defined minimum and maximum bounds. ([source](https://github.com/OpenFlutter/flutter_screenutil/blob/master/README.md))
- [Layout Recalculation Triggers](https://awesome-repositories.com/f/user-interface-experience/layout-recalculation-triggers.md) — Listens to system-level screen change notifications to trigger layout recalculations during orientation or window shifts.
- [Adaptive UI Layouts](https://awesome-repositories.com/f/user-interface-experience/responsive-layout-adapters/adaptive-ui-layouts.md) — Adjusts UI proportions and font sizes automatically during device orientation changes or split-screen mode updates.
- [Safe Area Metrics](https://awesome-repositories.com/f/user-interface-experience/safe-area-metrics.md) — Retrieves precise device-specific inset values, including notches and system padding, to calculate usable screen area.

### Mobile Development

- [Responsive UI Design](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-development/responsive-ui-design.md) — Scales widgets and layouts based on design drafts to ensure consistent proportions across different screen resolutions.
- [Multi-Device Layout Adapters](https://awesome-repositories.com/f/mobile-development/android-layout-components/screen-adaptation-libraries/multi-device-layout-adapters.md) — Handles screen size changes and orientation shifts to ensure the UI fits various mobile device screens.
- [Layout Scaling Utilities](https://awesome-repositories.com/f/mobile-development/resolution-scaling-coefficients/layout-scaling-utilities.md) — Calculates widget sizes and radii based on reference designs to ensure consistent proportions across resolutions. ([source](https://github.com/OpenFlutter/flutter_screenutil))
- [Responsive UI Frameworks](https://awesome-repositories.com/f/mobile-development/responsive-ui-frameworks.md) — Provides a toolkit for scaling layout dimensions and fonts in Flutter based on a reference design.
- [Screen Metadata Retrieval](https://awesome-repositories.com/f/mobile-development/screen-metadata-retrieval.md) — Provides programmatic access to real-time device properties such as screen width, height, and pixel density.
- [Rebuild Optimization Tools](https://awesome-repositories.com/f/mobile-development/flutter-state-management/rebuild-optimization-tools.md) — Limits widget tree updates during screen resizing by defining rebuild factors to optimize performance. ([source](https://github.com/OpenFlutter/flutter_screenutil/blob/master/CHANGELOG.md))

### Development Tools & Productivity

- [Split-Screen Layout Adaptation](https://awesome-repositories.com/f/development-tools-productivity/window-managers/split-screen-layout-adaptation.md) — Adjusts UI dimensions and layout calculations in real time when the application is used in split-screen mode.
- [Screen Dimension Monitors](https://awesome-repositories.com/f/development-tools-productivity/window-managers/split-screen-layouts/screen-dimension-monitors.md) — Detects changes in screen dimensions to trigger layout updates during device orientation or split-screen transitions. ([source](https://github.com/OpenFlutter/flutter_screenutil))

### Software Engineering & Architecture

- [UI Element Scaling Constraints](https://awesome-repositories.com/f/software-engineering-architecture/design-token-architectures/constraint-based-design-scales/ui-element-scaling-constraints.md) — Implements scaling limits to maintain visual integrity on extremely large or small displays.
