A Flutter package for masked text input with customizable masks and money formatting.
flutter_masked_text is a Flutter package that provides controllers for masked text input, allowing developers to format user input with predefined patterns like phone numbers, dates, or currency. It solves the problem of manual input validation and formatting by automatically applying masks as users type, ensuring data consistency and improving user experience.
Flutter developers building mobile applications that require formatted text input, such as forms for phone numbers, identification numbers, dates, or financial data.
Developers choose this package for its simplicity, extensibility, and seamless integration with Flutter's TextField widgets. It offers both general-purpose masking and specialized money formatting, with hooks for custom validation and runtime mask updates.
A masked text for Flutter.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports custom translators and regex patterns, allowing developers to define any mask character beyond defaults like '0' or 'A', as shown in the README's example for obfuscated credit cards.
Provides MoneyMaskedTextController with configurable decimal/thousand separators, currency symbols, and precision, tailored for financial input fields with easy value retrieval via numberValue.
Allows runtime mask changes using the updateMask method, enabling adaptive input formats without reinitializing controllers, as demonstrated for switching between CPF and CNPJ masks.
Includes beforeChange and afterChange hooks for validation and side effects, giving fine-grained control over input flow, with parameters for previous and next values.
The README explicitly states the project is archived and won't receive updates, posing risks for compatibility, security, and bug fixes in production apps.
Offers minimal examples and no advanced guides, making it harder to implement complex scenarios like custom validation or integration with state management.
The TODO list mentions 'Raw Text Widget' as pending, indicating missing functionality that might be needed for certain use cases.
Being unmaintained, it lacks community support, may not work with newer Flutter versions, and has no guarantees for fixes or improvements.