SST Base
SST Base is a base template for all SSTeam Flutter/Dart packages.
It provides a foundation of common utilities, UI helpers, and best practices to accelerate
Flutter/Dart development.
Clone this repository, rename the package, and start your new project instantly.
Features
SST Base offers well-organized modules and high-performance patterns for rapid development:
High Performance Initialization
- Parallel Startup: Splash screen initializes IAP and GDPR consent concurrently using
Future.waitfor faster boot times. - Safety Timeout: Built-in 8-second timeout prevent app hangs during network-dependent service initialization.
- Modular Entry Point: Example
main_basedemonstrates a clean, modular initialization flow for better code reading.
Storage
PrefStorage— helper for shared preferences.Storage— generic storage helper for local data.
Base UI Components (base.dart)
base_bloc.dart— base BLoC class for state management.base_event.dart— base event definitions for BLoC.base_screen.dart— base screen widget for consistent UI structure.base_state.dart— base state definitions for BLoC.
Common UI Components
adaptive_banner.dart— anchored adaptive banner for maximized revenue.interleaved_ad_widget.dart— list ad supporting Small/Big alternating pattern.app_bar.dart— reusable app bar widget.custom_button.dart— styled button widget.custom_check_box.dart— custom checkbox widget.custom_radio.dart— styled radio button widget.infinite_scroll_widget.dart— infinite scroll helper widget.search_view.dart— reusable search input view.
Dialogs
base_dialog.dart— foundational dialog structure for reuse and customization.custom_dialog.dart— prebuilt customizable dialog widget.dismissible_dialog.dart— dialog supporting swipe/tap-to-dismiss.
Utility Classes
ad_utils.dart— helpers for Adaptive, MREC, and App Open ads.ad_list_helper.dart— grid/list ad index and offset calculator.base_settings.dart— app-wide configuration management.firebase_utils.dart— Firebase helper functions.in_app_purchase_utils.dart— robust cross-platform IAP with restored check.logger_utils.dart— logging with optional Firebase Crashlytics integration.navigator_utils.dart— navigation helpers.toast_utils.dart— toast notification helpers.
Localization Support
Tools to simplify multi-language support.
Libraries
- info
- model/app_theme
- model/feedback_payload
- model/model
- model/status
- model/support_language
- sst_base
- storage/pref_storage
- storage/storage
- ui/base/base
- ui/base/base_screen
- ui/base/base_settings_screen
- ui/base/base_splash_screen
- ui/component/app_bar
- ui/component/app_theme_notifier
- ui/component/bottom_loader
- ui/component/clickable
- ui/component/component
- ui/component/custom_check_box
- ui/component/custom_radio
- ui/component/custom_refresh_indicator
- ui/component/image_view
- ui/component/image_view_file_io
- ui/component/image_view_file_web
- ui/component/infinite_scroll_widget
- ui/component/interleaved_ad_widget
- ui/component/line
- ui/component/no_data_widget
- ui/component/pressable_container
- ui/component/pressable_image
- ui/component/scroll_to_hide
- ui/component/search_view
- ui/component/timer_view
- ui/dialog/base_dialog
- ui/dialog/custom_dialog
- ui/dialog/dialog
- ui/dialog/dismissible_dialog
- ui/dialog/feedback_dialog
- ui/dialog/info_dialog
- ui/dialog/select_language_dialog
- ui/dialog/unlock_feature_dialog
- ui/sst_app
- ui/sst_splash_screen
- util/ad_utils
- util/assets_utils
- util/base_settings
- util/color_ext
- util/color_utils
- util/context_ext
- util/datetime_ext
- util/datetime_utils
- util/device_utils
- util/double_ext
- util/duration_ext
- util/feedback_service
- util/file_utils
- util/firebase_utils
- util/future_ext
- util/image_utils
- util/in_app_purchase_utils
- util/list_ext
- util/logger_utils
- util/merged_asset_loader
- util/my_http
- util/number_utils
- util/permisssion_utils
- util/range_input_formatter
- util/scroll_controller_ext
- util/string_ext
- util/util