office_core 1.0.0
office_core: ^1.0.0 copied to clipboard
A federated Flutter plugin consolidating Remote Config, Ads, Crashlytics, Analytics, Notifications, and Trial/Limits behind a single initialize() entry point with a strongly-typed configuration model.
1.0.0 #
Initial release of OfficeCore.
Subsystems #
- Remote Config: Strongly-typed JSON config model with versioned schema, automatic refresh on connectivity restore, broadcast change stream.
- Ads:
OfficeAdsControllerwith banner, native, interstitial, and app-open ad support. Ad unit IDs and visibility flags fetched from Remote Config.BannerAdWidgetandNativeAdWidgetwith shimmer loading states. - Crashlytics:
OfficeCrashlyticswrapping Firebase Crashlytics with breadcrumb logging, custom keys, and zone-guarded error capture. - Analytics:
OfficeAnalyticsServicewith drop-inRouteObserverfor automatic screen-view tracking andlogEventfor custom events. - Notifications:
OfficeNotificationControllerwrapping FCM +flutter_local_notifications. Device registration, topic subscription, tap navigation, translation-progress notification helper. - Trial & Limits:
OfficeTrialServiceconsolidating conversion limits, file-size limits, batch limits, feature locks (download/share/copy), and local usage tracking withhasRemainingQuota.
Abstractions #
PremiumStatusProviderinterface decoupling ads and trial gating from any specific IAP or state-management solution. Built-in adapters:RevenueCatPremiumProviderGetXPremiumProvider(zero-rewrite migration from existing GetX apps)FakePremiumProvider(for tests)
Utilities #
OfficeLifecycleService— singleWidgetsBindingObserverwithonResumeAfterPausestream (replaces duplicatedLifecycleEventHandler).OfficeConnectivityService— wrapsinternet_connection_checker_plus, exposesonReconnectstream.OfficeLogger— tagged logger respectinglogLevel.OfficePackageInfo/OfficeDeviceInfo— cachedPackageInfo.fromPlatform()andflutter_udidresults.OfficeConsentGate— ATT (iOS) + GDPR (EU) consent widget.OfficeShimmer— extracted shimmer loading widget.OfficeZoneGuard—runZonedGuardedwrapper with crashlytics integration.
Platform Support #
| Platform | Status |
|---|---|
| Android | Full Firebase-backed support |
| iOS | Full Firebase-backed support |
| macOS | Full Firebase-backed support |
| Windows | No-op stubs (v2 will add Sentry + custom HTTP RC) |