flutter_super library
Super is a state management framework for Flutter that aims to simplify and streamline the development of reactive and scalable applications. It provides a set of tools and abstractions to manage state, handle side effects, and build UI components in a declarative and efficient manner.
Key Features:
- Reactive state management.
- Simple dependency injection.
- Lifecycle management for widget controllers.
- Widget builders for building reactive UI components.
- Intuitive testing (no setup/teardown required), dedicated testing library super_test.
With Super, you can build robust and scalable Flutter applications while maintaining clean and organized code. The framework strives to adhere to the high standards set by the Flutter Team in terms of readability, documentation, and usability.
Give Super a try and experience a streamlined approach to state management in Flutter!
Dev Note:
Hi there, DrDejaVu here! I have put in considerable effort to structure and document the Super framework in a readable and understandable manner. I wanted to create a framework that aligns with the high standards set by the Flutter Team, who have done an incredible job of documenting the Flutter framework.
While developing with Super, you may notice similarities in API names with other state management solutions such as Bloc, and others. This is because I have drawn inspiration from these solutions and leveraged my previous experience with them to create Super. By adopting familiar concepts and naming conventions, I aimed to make the learning curve smoother for developers already familiar with these state management solutions.
I hope you find the Super framework as pleasing and easy to work with as I intended it to be. If you have any feedback or suggestions for improvement, please don't hesitate to reach out. Happy coding!
Best regards, DrDejaVu
Classes
-
AsyncBuilder<
T> - A stateful widget that builds itself based on the state of an asynchronous computation.
-
Rx<
T> - An abstract base class for implementing reactive objects.
- RxBool
-
A reactive container for holding a state of type
T. - RxDouble
-
A reactive container for holding a state of type
T. - RxInt
-
A reactive container for holding a state of type
T. -
RxList<
T> - A reactive list that extends the functionality of a regular Dart list and notifies its listeners when the list is modified.
- RxListener
- RxListener
-
RxMap<
K, V> - A reactive map that extends the functionality of a regular Dart map and notifies its listeners when the map is modified.
-
RxMerge<
T> - RxMerge
-
RxNotifier<
T> -
An abstract base class for creating reactive notifiers that manage
a state of type
T. -
RxSet<
T> -
A reactive container for managing a set of unique values of type
T. - RxString
-
A reactive container for holding a state of type
T. -
RxT<
T> -
A reactive container for holding a state of type
T. - SuperApp
- A stateful widget that represents the root of the Super framework.
- SuperAppConfig
- Configuration class for the SuperApp widget.
- SuperBuilder
- A stateful widget that rebuilds its child widget when the Rx object changes.
-
SuperConsumer<
T> - A widget that consumes an RxT or RxNotifier object and rebuilds whenever it changes.
- SuperController
- Deprecated to align with Flutter's MVVM architecture, Use SuperViewModel instead.
-
SuperListener<
T> - A widget that calls the listener callback when the given rx object changes.
- SuperViewModel
- A mixin class that provides a lifecycle for view models used in the application.
-
SuperWidget<
T extends SuperViewModel> - A StatelessWidget that provides the base functionality for widgets that work with a SuperViewModel.
Mixins
- SuperModel
- A class that provides value equality checking for classes.
Extensions
- ContextExt on BuildContext
- Extensions on BuildContext
- RxBoolExt on bool
-
A reactive container for holding a state of type
T. - RxDoubleExt on double
-
A reactive container for holding a state of type
T. - RxIntExt on int
-
A reactive container for holding a state of type
T. -
RxListExt
on List<
T> - A reactive list that extends the functionality of a regular Dart list and notifies its listeners when the list is modified.
-
RxMapExt
on Map<
K, V> - A reactive map that extends the functionality of a regular Dart map and notifies its listeners when the map is modified.
-
RxSetExt
on Set<
T> -
A reactive container for managing a set of unique values of type
T. - RxStringExt on String
-
A reactive container for holding a state of type
T. - RxTExt on T
-
A reactive container for holding a state of type
T. - SuperExt on SuperInterface
- Enables access to functionality through Super
Properties
- Super → SuperInterface
-
The global access point for the "Super" framework.
no setter