Tenzor - Comprehensive Flutter Utility & UI Toolkit
A comprehensive Flutter toolkit that provides a collection of production-ready UI components, utilities, helpers, and Firebase integrations to accelerate your app development process.
Features
🎨 UI Components
- Buttons:
TenzorButton,TenzorTextButton,TenzorIconButton,TenzorOutlinedButton,TenzorLoadingButton,TenzorFloatingButton - Inputs:
TenzorTextField,TenzorPasswordField,TenzorEmailField,TenzorSearchField,TenzorNumberField - Navigation:
TenzorNavigation,TenzorAppBar,TenzorBottomNavigation,TenzorTabBar,TenzorAnimatedNavigator - Loaders:
TenzorCircularLoader,TenzorLinearLoader,TenzorShimmerLayout - Feedback:
TenzorAlert,TenzorSnackbar - Specialized:
TenzorSplash,TenzorChatView,TenzorVideoPlayer
🔥 Firebase Integrations
- Auth:
TenzorAuthService- Complete authentication service - Firestore:
TenzorFirestoreService- Simplified Firestore operations - Storage:
TenzorStorageService- Easy cloud storage management
🛠️ Core Utilities
- Async helpers: Simplified async/await patterns
- Cache: Built-in caching mechanisms
- Logging:
TenzorLogger- Structured logging - Network:
TenzorHttpClient- HTTP client wrapper - Responsive:
TenzorResponsive- Adaptive layouts - Validation:
TenzorValidator- Form validation utilities - Result type: Type-safe error handling
- Extensions: Color, String, and more extensions
📦 Flexible Imports
Import the entire package or only the components you need:
// Import everything
import 'package:tenzor/tenzor.dart';
// Or import individual components
import 'package:tenzor/tenzor_button.dart';
import 'package:tenzor/tenzor_navigation.dart';
import 'package:tenzor/tenzor_text_field.dart';
Getting Started
Prerequisites
- Flutter 3.16.0+
- Dart 3.13.1+
Installation
Add Tenzor to your pubspec.yaml:
dependencies:
flutter:
sdk: flutter
tenzor: ^0.1.0
Basic Usage
import 'package:flutter/material.dart';
import 'package:tenzor/tenzor.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: TenzorAppBar(title: 'Tenzor Demo'),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
TenzorTextField(
label: 'Email',
validator: TenzorValidator.email,
),
const SizedBox(height: 20),
TenzorButton(
text: 'Submit',
onPressed: () {
TenzorSnackbar.show(context, 'Form submitted!');
},
),
],
),
),
),
);
}
}
Firebase Setup (Optional)
To use Firebase features, add Firebase to your project and initialize:
await Firebase.initializeApp();
final auth = TenzorAuthService();
final firestore = TenzorFirestoreService();
final storage = TenzorStorageService();
Example
Check out the example directory for a complete demo application showcasing all Tenzor features.
Additional Information
Issues & Feedback
Please file issues, bugs, or feature requests in our issue tracker.
Contributing
Contributions are welcome! Please read our contributing guidelines before submitting PRs.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Libraries
- tenzor
- tenzor_alert
- tenzor_app_bar
- tenzor_chat_view
- tenzor_circular_loader
- tenzor_contextual_card
- tenzor_email_field
- tenzor_linear_loader
- tenzor_number_field
- tenzor_password_field
- tenzor_search_field
- tenzor_shimmer_layout
- tenzor_snackbar
- tenzor_splash
- tenzor_tab_bar
- tenzor_text_field
- tenzor_video_player