king_validation 1.1.0
king_validation: ^1.1.0 copied to clipboard
A lightweight Flutter and Dart validation package with reusable validators, Form Validators, and customizable validation messages.
๐ King Validation #
A lightweight, fast, and easy-to-use Flutter/Dart validation package that helps you validate user input with clean, reusable, and customizable validators.
โจ Features #
โ Email Validation
๐ Password Validation
๐ฑ Phone Validation
๐ URL Validation
๐ค Username Validation
๐ Name Validation
๐ฆ Empty Validation
๐ข Number Validation
๐ OTP Validation
๐ณ Credit Card Validation
๐ ๏ธ Custom Validation
๐ Flutter Form Validators
๐จ Custom Validation Messages
โ Null Safety
๐ Installation #
Add the package to your pubspec.yaml:
dependencies:
king_validation: ^1.1.0
Install the package:
flutter pub get
๐ฅ Import #
import 'package:king_validation/king_validation.dart';
๐ Usage Examples #
๐ง Email Validation #
final result = EmailValidator.validate(
'hero@gmail.com',
);
print(result.isValid);
๐ Password Validation #
final result = PasswordValidator.validate(
'Hero@123',
);
print(result.isValid);
๐ฑ Phone Validation #
final result = PhoneValidator.validate(
'1234567890',
);
print(result.isValid);
๐ค Username Validation #
final result = UsernameValidator.validate(
'hero_123',
);
print(result.isValid);
๐ Name Validation #
final result = NameValidator.validate(
'Hero Ahmed',
);
print(result.isValid);
๐ URL Validation #
final result = UrlValidator.validate(
'https://google.com',
);
print(result.isValid);
๐ฆ Empty Validation #
final result = EmptyValidator.validate(
'Hello World',
);
print(result.isValid);
๐ข Number Validation #
final result = NumberValidator.validate(
'123.45',
);
print(result.isValid);
๐ OTP Validation #
final result = OtpValidator.validate(
'123456',
);
print(result.isValid);
๐ณ Credit Card Validation #
final result = CreditCardValidator.validate(
'4111111111111111',
);
print(result.isValid);
๐ ๏ธ Custom Validation #
final result = CustomValidator.validate(
'ABC123',
RegExp(r'^[A-Z0-9]+$'),
);
print(result.isValid);
๐ Flutter Form Validators #
Use the built-in form validators directly with TextFormField.
TextFormField(
validator: const EmailFormValidator().call,
)
Example with another validator:
TextFormField(
validator: const PasswordFormValidator().call,
)
๐จ Custom Error Messages #
Override the default validation messages.
TextFormField(
validator: const EmailFormValidator(
messages: {
ValidationError.empty: 'Email is required.',
ValidationError.invalidEmail: 'Please enter a valid email.',
},
).call,
)
๐ Validation Result #
final result = EmailValidator.validate(
'hero@gmail.com',
);
if (result.isValid) {
print('Valid');
} else {
print(result.error);
}
๐ฏ Available Validators #
| Validator | Description |
|---|---|
| ๐ง EmailValidator | Validate email addresses |
| ๐ PasswordValidator | Validate strong passwords |
| ๐ฑ PhoneValidator | Validate phone numbers |
| ๐ค UsernameValidator | Validate usernames |
| ๐ NameValidator | Validate names |
| ๐ UrlValidator | Validate URLs |
| ๐ฆ EmptyValidator | Validate empty values |
| ๐ข NumberValidator | Validate numeric values |
| ๐ OtpValidator | Validate OTP codes |
| ๐ณ CreditCardValidator | Validate credit card numbers |
| ๐ ๏ธ CustomValidator | Validate custom regular expressions |
๐งช Quality #
- โ 100+ Unit Tests
- โ Flutter Example Included
- โ Null Safety
- โ Flutter Support
- โ Dart Support
๐ Example #
A complete Flutter example demonstrating every validator and the new Form Validators is available in the example/ directory.
๐ค Contributing #
Contributions, issues, and feature requests are welcome.
๐ License #
MIT License
Made with โค๏ธ using Flutter & Dart.