custom_form_kit
Flutter için özelleştirilebilir form bileşenleri ve hazır validatörler içeren, orta ölçekli bir form kiti.
Karmaşık form yapılarını basit ve yönetilebilir hale getirir. Tek tek TextFormField yazmakla uğraşmadan, özelleştirilebilir alanları kolayca oluşturabilirsiniz.
🚀 Özellikler
CustomTextField: Yazı alanı (şifre modu, klavye türü, validasyon)CustomDropdown: Seçim listesi (dropdown)CustomDatePicker: Tarih seçici form alanıCustomForm: Alanları gruplayıp kolaycaonSubmitile veri almakValidators:required,email,minLengthgibi hazır kurallar- Temiz ve sade arayüz, responsive tasarım desteği
- Tamamen özelleştirilebilir yapı
📦 Kurulum
pubspec.yaml dosyanıza şu satırı ekleyin:
dependencies:
custom_form_kit: ^0.1.3
Ve ardından terminalde çalıştırın:
flutter pub get
🧪 Kullanım Örneği
import 'package:custom_form_kit/custom_form_kit.dart';
CustomForm(
fields: [
TextFieldConfig(
name: 'fullName',
label: 'Ad Soyad',
validator: Validators.required('Lütfen adınızı girin'),
),
TextFieldConfig(
name: 'email',
label: 'E-posta',
validator: Validators.email(),
),
DropdownFieldConfig(
name: 'gender',
label: 'Cinsiyet',
items: ['Kadın', 'Erkek', 'Belirtmek istemiyorum'],
validator: Validators.required(),
),
DatePickerFieldConfig(
name: 'birthDate',
label: 'Doğum Tarihi',
validator: (value) =>
value == null ? 'Lütfen doğum tarihinizi seçin' : null,
),
],
submitButtonText: 'Kaydet',
onSubmit: (formData) {
print('Form verisi:');
print(formData); // Map<String, dynamic>
},
);
📤 Dönen Veri Örneği
{
"fullName": "Emre Yılmaz",
"email": "emre@example.com",
"gender": "Erkek",
"birthDate": "1995-04-22T00:00:00.000"
}
Not:
DateTimeJSON’da string olarak dönüştürülür.
📁 Proje Yapısı
lib/
├── src/
│ ├── custom_text_field.dart
│ ├── custom_dropdown.dart
│ ├── custom_date_picker.dart
│ ├── form_manager.dart
│ └── validators.dart
└── custom_form_kit.dart
📝 Lisans
MIT Lisansı
Detaylar için LICENSE dosyasını inceleyin.
Libraries
- custom_form_kit
- A reusable form kit package for Flutter.
- main