Skip to main content

bharatvalidator 1.0.0 copy "bharatvalidator: ^1.0.0" to clipboard
bharatvalidator: ^1.0.0 copied to clipboard

๐Ÿ‡ฎ๐Ÿ‡ณ India-first Flutter form validation package with 30+ validators. Covers Aadhaar, PAN, GST, IFSC, UPI, Driving License, Passport, Voter ID, CIN, TAN, FSSAI, ABHA, EPF, Card (Luhn), MICR, RERA, Udy [...]

๐Ÿ‡ฎ๐Ÿ‡ณ BharatValidator #

India-first Flutter form validation package.

Validate Aadhaar, PAN, GST, IFSC, UPI, Pincode, Phone (+91), Vehicle Number, Passport, Voter ID, Bank Account โ€” with English, Hindi & Gujarati error messages.

pub package License: MIT


โœจ Features #

Validator Description
aadhaar 12-digit Aadhaar (starts 2โ€“9)
pan PAN card (ABCDE1234F format)
gst 15-char GST number
ifsc Bank IFSC code
upi UPI ID (name@handle)
pincode 6-digit Indian pincode
phone 10-digit mobile (+91 supported)
email Email address
vehicle Indian vehicle number (GJ01AB1234)
passport Indian passport number
voterId Voter ID / EPIC number
bankAccount Bank account number (9โ€“18 digits)
name Name (supports Devanagari & Gujarati script)
password Strong password (8+ chars, upper, lower, digit, symbol)

Multi-language error messages: English ๐Ÿ‡ฌ๐Ÿ‡ง ยท Hindi ๐Ÿ‡ฎ๐Ÿ‡ณ ยท Gujarati ๐ŸŸ 


๐Ÿš€ Installation #

dependencies:
  bharatvalidator: ^0.0.1
flutter pub get

๐Ÿ“– Usage #

Basic #

import 'package:bharatvalidator/bharatvalidator.dart';

final v = BharatValidator(); // English (default)

TextFormField(
  validator: v.aadhaar,  // Pass directly!
)

Change Language #

// Hindi
final v = BharatValidator(locale: BharatLocale.hindi);

// Gujarati
final v = BharatValidator(locale: BharatLocale.gujarati);

Full Form Example #

final v = BharatValidator(locale: BharatLocale.hindi);

Form(
  key: _formKey,
  child: Column(
    children: [
      TextFormField(validator: v.name,        decoration: InputDecoration(labelText: 'Name')),
      TextFormField(validator: v.phone,       decoration: InputDecoration(labelText: 'Mobile')),
      TextFormField(validator: v.aadhaar,     decoration: InputDecoration(labelText: 'Aadhaar')),
      TextFormField(validator: v.pan,         decoration: InputDecoration(labelText: 'PAN')),
      TextFormField(validator: v.gst,         decoration: InputDecoration(labelText: 'GST')),
      TextFormField(validator: v.ifsc,        decoration: InputDecoration(labelText: 'IFSC')),
      TextFormField(validator: v.upi,         decoration: InputDecoration(labelText: 'UPI ID')),
      TextFormField(validator: v.pincode,     decoration: InputDecoration(labelText: 'Pincode')),
      TextFormField(validator: v.vehicle,     decoration: InputDecoration(labelText: 'Vehicle No.')),
      TextFormField(validator: v.passport,    decoration: InputDecoration(labelText: 'Passport')),
      TextFormField(validator: v.voterId,     decoration: InputDecoration(labelText: 'Voter ID')),
      TextFormField(validator: v.bankAccount, decoration: InputDecoration(labelText: 'Account No.')),
      TextFormField(validator: v.password,    decoration: InputDecoration(labelText: 'Password')),
      ElevatedButton(
        onPressed: () => _formKey.currentState!.validate(),
        child: Text('Submit'),
      ),
    ],
  ),
)

๐ŸŒ Supported Languages #

BharatLocale.english   // "Enter a valid 12-digit Aadhaar number."
BharatLocale.hindi     // "เคฎเคพเคจเฅเคฏ 12 เค…เค‚เค•เฅ‹เค‚ เค•เคพ เค†เคงเคพเคฐ เคจเค‚เคฌเคฐ เคฆเคฐเฅเคœ เค•เคฐเฅ‡เค‚เฅค"
BharatLocale.gujarati  // "เชฎเชพเชจเซเชฏ 12 เช…เช‚เช•เชจเซ‹ เช†เชงเชพเชฐ เชจเช‚เชฌเชฐ เชฆเชพเช–เชฒ เช•เชฐเซ‹."

๐Ÿ—๏ธ Project Structure #

bharatvalidator/
โ”œโ”€โ”€ lib/
โ”‚   โ”œโ”€โ”€ bharatvalidator.dart          # Main export
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ”œโ”€โ”€ bharat_validator.dart     # Main BharatValidator class
โ”‚       โ”œโ”€โ”€ locale/
โ”‚       โ”‚   โ””โ”€โ”€ bharat_locale.dart    # Multi-language messages
โ”‚       โ””โ”€โ”€ validators/
โ”‚           โ”œโ”€โ”€ aadhaar_validator.dart
โ”‚           โ”œโ”€โ”€ pan_validator.dart
โ”‚           โ”œโ”€โ”€ gst_validator.dart
โ”‚           โ”œโ”€โ”€ ifsc_validator.dart
โ”‚           โ”œโ”€โ”€ upi_validator.dart
โ”‚           โ”œโ”€โ”€ pincode_validator.dart
โ”‚           โ”œโ”€โ”€ phone_validator.dart
โ”‚           โ”œโ”€โ”€ email_validator.dart
โ”‚           โ”œโ”€โ”€ vehicle_validator.dart
โ”‚           โ”œโ”€โ”€ passport_validator.dart
โ”‚           โ”œโ”€โ”€ voter_id_validator.dart
โ”‚           โ”œโ”€โ”€ bank_account_validator.dart
โ”‚           โ”œโ”€โ”€ name_validator.dart
โ”‚           โ””โ”€โ”€ password_validator.dart
โ”œโ”€โ”€ ios/                              # iOS plugin stub
โ”œโ”€โ”€ android/                          # Android plugin stub
โ”œโ”€โ”€ example/                          # Full demo app
โ””โ”€โ”€ test/                             # Unit tests

๐Ÿงช Running Tests #

flutter test

๐Ÿ“„ License #

MIT License ยฉ 2025 โ€” Made with โค๏ธ for Indian Flutter developers.

3
likes
0
points
42
downloads

Publisher

unverified uploader

Weekly Downloads

๐Ÿ‡ฎ๐Ÿ‡ณ India-first Flutter form validation package with 30+ validators. Covers Aadhaar, PAN, GST, IFSC, UPI, Driving License, Passport, Voter ID, CIN, TAN, FSSAI, ABHA, EPF, Card (Luhn), MICR, RERA, Udyam and more. Multi-language error messages: English, Hindi & Gujarati.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter

More

Packages that depend on bharatvalidator