Skip to content

EZ Flutter Widgets

A collection of simple, defensive, and developer-friendly Flutter widgets designed to prevent common crashes and reduce boilerplate.

Available Widgets

  • EzCircleAvatar


    A smart avatar widget that automatically generates initials and contrasting background colors from names. Handles image loading errors gracefully.

  • EZEmailField


    A pre-validated, highly customizable email text field with built-in regex and error handling. Just drop it in a Form and go.

  • EzGridView


    A crash-safe GridView.builder that automatically handles unbounded constraints in Columns and Rows, preventing "Vertical viewport was given unbounded height" errors.

  • EzListView


    A defensive ListView.builder that prevents layout crashes from unbounded height/width constraints. It acts as a drop-in replacement for standard ListViews.

  • EzCustomScrollView


    A defensive wrapper for CustomScrollView that safely handles unbounded constraints with helpful debug info.

  • EzExpanded


    A defensive widget that provides flex-based expansion behavior while safely handling unbounded constraints. It prevents "Incorrect use of ParentDataWidget" crashes.

  • EzPasswordField


    A secure password field with built-in visibility toggle and configurable validation rules (length, charset).

Installation

Add the desired package to your pubspec.yaml:

dependencies:
  ez_circle_avatar: ^0.1.0
  ez_email_field: ^0.1.0
  ez_grid_view: ^0.1.0
  ez_list_view: ^0.1.0
  ez_custom_scroll_view: ^0.1.0
  ez_expanded: ^0.1.0

Philosophy

  1. Defensive: Widgets should never crash your app. They should handle edge cases (unbounded constraints, nulls, errors) gracefully.
  2. Developer-Friendly: Clear error messages in debug mode help you fix issues fast, while silent fixes in release mode keep users happy.
  3. Simple: Minimal configuration required. Sensible defaults for everything.

Support

If you find these widgets helpful, please consider supporting the project: