Codenoah paketi, Flutter ile uygulama geliştirirken ihtiyacınız olan bir dizi tasarım bileşeni ve kullanışlı genişletme (extension) sunan kapsamlı bir yardımcı pakettir. Codenoah, özellikle tasarım ve kullanıcı deneyimi geliştirmeye yönelik çeşitli araçlar ve widget’lar içerir. Bu paket ile Flutter projelerinizi daha hızlı ve etkili bir şekilde geliştirebilir, kod tekrarı ve yapılandırma sürecini en aza indirebilirsiniz.
Container(
width: ViewSizeValueModelExtension(context).maxWidth(context),
height: ViewSizeValueModelExtension(context).dynamicHeight(context, 0.2),
color: Colors.red,
),
Kenar Yumuşatma için kullanılacak extension
RadiusExtension // extension
Metin kopyalama için kullanım.
onTap: (){
CodeNoahClipboard.controlC('Merhaba');
}
// Normal Yöneldirme
() {
CodeNoahNavigatorRouter.push(
context,
ViewScreen(),
);
},
// Normal Pozisyonlu Ekran Yönlendirme
() {
CodeNoahNavigatorRouter.push(
context,
ViewScreen(),
direction: SlideDirection.leftToRight,
);
},
// Geri Dönüş Olmadan Normal Pozisyonlu Ekran Yönlendirme
() {
CodeNoahNavigatorRouter.pushAndRemoveUntil(
context,
ViewScreen(),
);
},
// Geri Dönüş Olmadan Normal Pozisyonlu Ekran Yöneldirme
() {
CodeNoahNavigatorRouter.pushAndRemoveUntil(
context,
ViewScreen(),
direction: SlideDirection.leftToRight,
);
},
İç boşluk kullanımları için: PaddingSizedsUtility
İç boşluk kullanımları için: MarginSizedsUtility
Hazır İkonları Kullanmak için : AppIcons
late String svgValue = AppIcons.callOutline.toSvg;
//
AppIcons.callOutline.toSvgImg(
Colors.red,
55,
55,
),
Firebase Servisi Kullanımları : FirebaseService
Future<void> exampleCollection() async {
// collection
final collectRef =
await FirebaseService().cloudFireStore.collection('User').get();
// authentication
final authRef =
await FirebaseService().authService.createUserWithEmailAndPassword(
email: 'hello@gmail.com',
password: "123",
);
// auth id
final userId = FirebaseService().authID;
}
Exception Kullanımı için : ServiceException
Future<void> hello() async {
try {
//
} catch (e) {
throw ServiceException('Hello');
}
}
Field Validator Doğrulama için : CodeNoahValidator
TextFormField(
validator: (String? value) =>
CodeNoahValidator(value: value, context: context).emptyNormalCheck,
),
CustomButtonWidget(
width: ViewSizeValueModelExtension(context).maxWidth(context),
text: 'Hello',
func: () {},
btnStatus: ButtonTypes.primaryColorButton,
),
CustomEmailFieldWidget(
emailController: TextEditingController(), // controller
hintText: 'E-mail', // field adı
onChanged: (val) {}, // onChanged
isLabelText: true, // field içinde veya üstünde gösterme
width: ViewSizeValueModelExtension(context).maxWidth(context), // field genişliği
),
CustomPasswordFieldWidget(
passwordController: TextEditingController(), // conroller
hintText: 'Şifre', // field adı
onChanged: (val) {}, // onChanged
isValidator: true, // doğrulma durumu
isLabelText: true, // field içinde veya üstünde gösterme
width: ViewSizeValueModelExtension(context).maxWidth(context), // field genişliği
),
NormalTextFieldWidget(
controller: TextEditingController(), // controller
hintText: 'Ad Soyad', // field adı
explanationStatus: false, // açıklama field olma durumu
onChanged: (val) {}, // onChanged
isValidator: true, // doğrulama durumu
enabled: true, // field aktif olma durumu
isLabelText: true, // field içinde veya üstünde gösterme
width: ViewSizeValueModelExtension(context).maxWidth(context), // field genişliği
),
NumberTextFieldWidget(
controller: TextEditingController(), // controller
hintText: 'Fiyat', // field adı
onChanged: (val) {}, // onChanged
isLabelText: true, // field içinde veya üstünde gösterme
width: ViewSizeValueModelExtension(context).maxWidth(context), // field genişliği
),
Container(
width: 55,
height: 55,
color: ColorExtension.lightGreen,
),
SizedBox(
width: ViewSizeValueModelExtension(context).maxWidth(context),
height: WidthHeightExtension.normalHeight,
),
2024 created for @NuhcanATAR