pushfire_sdk 0.0.1
pushfire_sdk: ^0.0.1 copied to clipboard
A lightweight push notification tracking SDK for Firebase.
Changelog #
All notable changes to the PushFire Flutter SDK will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.0.1 - 2024-12-19 #
Added #
- Initial beta release of PushFire Flutter SDK
- Basic subscriber management functionality
- Device registration with FCM integration
- Tag management capabilities
- Core API client implementation
1.0.0 2024-01-XX #
Added #
- Initial release of PushFire Flutter SDK
- Automatic device registration with FCM integration
- Subscriber management (login, update, logout)
- Tag management (add, update, remove single and multiple tags)
- Configurable SDK with custom API endpoints and settings
- Comprehensive error handling with specific exception types
- Event streams for real-time updates
- Built-in logging system for debugging
- Cross-platform support (iOS and Android)
- Complete API coverage for PushFire service
Features #
-
Device Management
- Automatic device registration on SDK initialization
- FCM token management and refresh handling
- Device information collection (OS, version, manufacturer, etc.)
- Persistent device storage
-
Subscriber Management
- Login/register subscribers with external ID
- Update subscriber information (name, email, phone)
- Logout functionality with data cleanup
- Persistent subscriber storage
-
Tag Management
- Add individual tags to subscribers
- Update existing tag values
- Remove tags from subscribers
- Batch operations for multiple tags
- Error handling for partial failures
-
Configuration
- Customizable API base URL
- API key authentication
- Configurable request timeouts
- Debug logging toggle
-
Error Handling
- Specific exception types for different error scenarios
- Network error handling
- API error handling with status codes
- Configuration validation
-
Event Streams
- Device registration events
- Subscriber login/logout events
- FCM token refresh events
- Real-time status updates
-
Developer Experience
- Comprehensive documentation
- Example application
- TypeScript-style documentation
- Best practices guide
- Troubleshooting guide
Dependencies #
flutter
: SDK integrationfirebase_messaging
: FCM token managementhttp
: API communicationdevice_info_plus
: Device information collectionpackage_info_plus
: App version informationshared_preferences
: Local data persistencelogging
: Debug logging system
Platform Support #
- iOS 11.0+
- Android API level 21+
- Flutter 3.0.0+
- Dart 3.0.0+
API Endpoints Covered #
POST /devices
- Register devicePATCH /devices/{id}
- Update devicePOST /subscribers/login
- Login subscriberPATCH /subscribers/{id}
- Update subscriberPOST /subscribers/logout
- Logout subscriberPOST /subscribers/tags
- Add subscriber tagPATCH /subscribers/tags
- Update subscriber tagDELETE /subscribers/tags
- Remove subscriber tag
Security #
- API key authentication for all requests
- Secure storage of sensitive data
- No hardcoded credentials
- HTTPS-only communication
Performance #
- Efficient API request batching
- Minimal memory footprint
- Optimized for mobile devices
- Background processing support