sign_with_btn 1.0.0
sign_with_btn: ^1.0.0 copied to clipboard
A beautiful Flutter package for creating customizable sign-in buttons with support for Google, Apple, Facebook, Email, and Phone authentication providers.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.0.0 - 2025-10-03 #
🎉 Initial Release #
Added
- Core Widget:
SignWithBtnwidget for creating customizable sign-in button grids - Authentication Providers: Pre-built support for popular providers:
- Google (
SignWithGoogle) - Apple (
SignWithApple) - Facebook (
SignWithFacebook) - Email (
SignWithEmail) - Phone (
SignWithPhone)
- Google (
- Flexible Styling:
SignWithStyleclass with multiple styling options:- Default style with Flutter's standard ButtonStyle
SignWithStyle.outline()factory for outlined buttonsSignWithStyle.filled()factory for filled buttons- Custom styling through ButtonStyle parameter
- Display Modes:
StyleTypeenum for controlling button content:StyleType.both- Show both icon and text (default)StyleType.icon- Show only provider iconsStyleType.text- Show only provider names
- Layout Customization: Configurable grid layout with:
- Adjustable number of buttons per row (
countInRow) - Customizable button height (
height) - Configurable spacing between buttons (
spaceBetween)
- Adjustable number of buttons per row (
- Event Handling:
onSigncallback for handling authentication flows - Extensibility: Abstract
SignWithTypebase class for creating custom providers - FontAwesome Integration: Beautiful icons using
font_awesome_flutterpackage
Features
- 🎨 Modern, customizable UI design
- 📱 Responsive grid layout
- 🔧 Extensive styling options
- 🚀 Easy integration with authentication flows
- 📦 Lightweight with minimal dependencies
- 🎯 Type-safe provider identification
- 🎪 Support for custom authentication providers
- ✨ Individual and global styling support
Documentation
- 📚 Comprehensive API documentation with examples
- 📖 Detailed README with usage guides and best practices
- 🎯 Code examples for common use cases
- 🛠️ Integration examples with Firebase Auth
- 🎨 Styling guides and customization options
- 📸 Visual screenshots showcasing different styling options
Platform Support
- ✅ Android
- ✅ iOS
- ✅ Web
- ✅ macOS
- ✅ Windows
- ✅ Linux
Technical Details #
- Minimum Flutter Version: 1.17.0
- Minimum Dart SDK: 3.9.2
- Dependencies:
flutter: SDKfont_awesome_flutter: ^10.10.0
- License: MIT
Example Usage #
SignWithBtn(
signTypes: [
SignWithGoogle(),
SignWithApple(),
SignWithFacebook(),
SignWithEmail(),
],
style: SignWithStyle.outline(color: Colors.blue),
onSign: (signType) {
// Handle authentication
print('Signing in with ${signType.title}');
},
)
For more information, visit our GitHub repository or check the documentation.