get_x_master library
GetX is an extra-light and powerful multi-platform framework. It combines high performance state management, intelligent dependency injection, and route management in a quick and practical way.
Classes
- Animate
- A versatile animation widget that simplifies creating various transitions.
- Bindings
-
Bindings should be extended or implemented.
When using
GetMaterialApp
, allGetPage
s and navigation methods (like Get.to()) have abinding
property that takes an instance of Bindings to manage the dependencies() (via Get.put()) for the Route you are opening. -
BindingsBuilder<
T> - Simplifies Bindings generation from a single callback. To avoid the creation of a custom Binding instance per route.
- CustomTransition
- DeepCollectionEquality
-
DefaultEquality<
E> - Engine
-
FastList<
T> - FormData
- FullLifeCycleController
-
GetAnimatedBuilder<
T> - A generic animated builder that handles animation setup and disposal.
-
GetAnimatedBuilderState<
T> - State class for GetAnimatedBuilder
- GetBar
-
GetBuilder<
T extends GetXController> -
GetBuilderState<
T extends GetXController> - GetConnect
- GetConnectInterface
- GetCupertinoApp
- A GetX-powered CupertinoApp that provides additional functionality for state management, routing, and internationalization.
- GetDelegate
- GetHttpClient
- GetInformationParser
- A custom route information parser for GetX navigation system.
- GetInstance
- GetInterface
- GetInterface allows any auxiliary package to be merged into the "Get" class through extensions
- GetLifeCycle
- GetMaterialApp
- GetMaterialController
- GetMicrotask
- A class to manage microtasks execution.
- GetMiddleware
- The Page Middlewares. The Functions will be called in this order (( redirect -> onPageCalled -> onBindingsStart -> onPageBuildStart -> onPageBuilt -> onPageDispose ))
-
GetModalBottomSheetRoute<
T> - A navigation configuration class that enables direct navigation to sub-routes and manages the current navigation state in GetX.
-
GetNotifier<
T> - GetObserver
-
GetPage<
T> -
GetPageRoute<
T> - GetPlatform
- A utility class to check the current platform.
- GetQueue
- A class to manage a queue of asynchronous jobs.
-
GetResponsiveView<
T> - A responsive view widget that adapts to different screen sizes, integrated with GetX.
-
GetResponsiveWidget<
T extends GetLifeCycleBase?> - A responsive widget that adapts to different screen sizes, integrated with GetX.
- GetRouterOutlet
- A GetX-specific implementation of RouterOutlet that provides additional functionality for GetX navigation.
- GetSnackBar
- GetSnackBarState
- GetSocket
-
GetStream<
T> - GetStream is the lightest and most performative way of working with events at Dart. You sintaxe is like StreamController, but it works with simple callbacks. In this way, every event calls only one function. There is no buffering, to very low memory consumption. event add will add a object to stream. addError will add a error to stream. listen is a very light StreamSubscription interface. Is possible take the last value with value property.
-
GetStreamTransformation<
T> - GetUtils
-
GetView<
T> - GetView is a great way of quickly access your Controller without having to call Get.find
-
GetWidget<
S extends GetLifeCycleBase?> - GetWidget is a great way of quickly access your individual Controller without having to call Get.find
-
GetX<
T extends DisposableInterface> - GetXController
-
GetXState<
T extends DisposableInterface> -
GraphQLResponse<
T> - HeaderValue
-
IdentityEquality<
E> - Equality of objects that compares only the identity of the objects.
-
IEquality<
E> - A generic equality relation on objects.
- InstanceInfo
-
InternalFinalCallback<
T> -
Special callable class to keep the contract of a regular method, and avoid
overrides if you extend the class that uses it, as Dart has no final
methods.
Used in
DisposableInterface
to avoid the danger of overriding onStart. -
IterableEquality<
E> - Equality on iterables.
-
LightSubscription<
T> -
ListEquality<
E> - Equality on lists.
-
MapEquality<
K, V> - Equality on maps.
- MiddlewareRunner
-
MiniStream<
T> -
MiniSubscription<
T> - MultipartFile
-
Node<
T> - Obx
- The simplest reactive widget in GetX.
- ObxState
-
ObxValue<
T extends RxInterface> - Similar to Obx, but manages a local state. Pass the initial data in constructor. Useful for simple local states, like toggles, visibility, themes, button states, etc. Sample: ObxValue((data) => Switch( value: data.value, onChanged: (flag) => data.value = flag, ), false.obs, ),
- ObxWidget
- The ObxWidget is the base for all GetX reactive widgets
- PageRedirect
- PathDecoded
-
Response<
T> - ResponsiveScreen
- Provides information about the screen size and type, using ContextExt.
- ResponsiveScreenSettings
- Settings for defining breakpoints for different screen types.
-
RouterOutlet<
TDelegate extends RouterDelegate< T> , T extends Object> - A generic router outlet widget that manages navigation state and renders route-specific content based on the current navigation configuration.
-
RouterOutletState<
TDelegate extends RouterDelegate< T> , T extends Object> - State class for RouterOutlet that manages lifecycle and route changes.
- Routing
-
Rx<
T> -
Foundation class used for custom
Types
outside the common native Dart types. For example, any custom "Model" class, like User().obs will useRx
as wrapper. - RxBool
- RxController
- RxDouble
- RxInt
-
RxInterface<
T> - This class is the foundation for all reactive (Rx) classes that makes Get so powerful. This interface is the contract that _RxImpl]< T > uses in all it's subclass.
-
RxList<
E> -
Create a list similar to
List<T>
-
RxMap<
K, V> -
Rxn<
T> - RxnBool
- RxnDouble
- RxnInt
- RxnNum
-
RxNotifier<
T> - RxnString
-
Rx class for
String
Type. - RxNum
-
RxSet<
E> - RxStatus
- RxString
-
Rx class for
String
Type. -
SetEquality<
E> - Equality of sets.
- SimpleBuilder
- SimpleBuilderState
- SnackBarController
- Controller for managing and displaying GetSnack bars.
-
SuperController<
T> - Translations
- TrustedCertificate
-
UnorderedIterableEquality<
E> - Equality of the elements of two iterables without considering order.
-
Value<
T> -
ValueBuilder<
T> - Manages a local state like ObxValue, but uses a callback instead of a Rx value.
-
ValueBuilderState<
T> - Worker
- Workers
Enums
- AnimationType
- Enum defining the available animation types.
- PopMode
- Enables the user to customize the intended pop behavior
- PreventDuplicateHandlingMode
- Enables the user to customize the behavior when pushing multiple routes that shouldn't be duplicates
- RowStyle
- ScreenType
- Enum representing different screen types.
- SmartManagement
- GetX by default disposes unused controllers from memory, Through different behaviors. SmartManagement.full SmartManagement.full is the default one. Dispose classes that are not being used and were not set to be permanent. In the majority of the cases you will want to keep this config untouched. If you new to GetX then don't change this. SmartManagement.onlyBuilder only controllers started in init: or loaded into a Binding with Get.lazyPut() will be disposed. If you use Get.put() or Get.putAsync() or any other approach, SmartManagement will not have permissions to exclude this dependency. With the default behavior, even widgets instantiated with "Get.put" will be removed, unlike SmartManagement.onlyBuilders. SmartManagement.keepFactoryJust like SmartManagement.full, it will remove it's dependencies when it's not being used anymore. However, it will keep their factory, which means it will recreate the dependency if you need that instance again.
- SnackbarStatus
- Indicates Status of snackbar SnackbarStatus.OPEN Snack is fully open, SnackbarStatus.CLOSED Snackbar has closed, SnackbarStatus.OPENING Starts with the opening animation and ends with the full snackbar display, SnackbarStatus.CLOSING Starts with the closing animation and ends with the full snackbar dispose
- SnackPosition
- Indicates if snack is going to start at the TOP or at the BOTTOM
- SnackStyle
- Indicates if snack will be attached to the edge of the screen or not
- Transition
Mixins
- Equality
- FullLifeCycleMixin
- GetLifeCycleBase
- The GetLifeCycle
- GetResponsiveMixin
- Mixin to provide responsive behavior for widgets.
- GetSingleTickerProviderStateMixin
-
Used like
SingleTickerProviderMixin
but only with Get Controllers. Simplifies AnimationController creation inside GetXController. -
GetStateUpdaterMixin<
T extends StatefulWidget> -
Complies with
GetStateUpdater
- GetTickerProviderStateMixin
-
Used like
TickerProviderMixin
but only with Get Controllers. Simplifies multiple AnimationController creation inside GetxController. - GetxServiceMixin
- Allow track difference between GetxServices and GetxControllers
-
NotifyManager<
T> -
PageRouteReportMixin<
T> -
RxObjectMixin<
T> -
global object that registers against
GetX
andObx
, and allows the reactivity of thoseWidgets
and Rx values. - ScrollMixin
- SingleGetTickerProviderMixin
-
Used like
SingleTickerProviderMixin
but only with Get Controllers. Simplifies AnimationController creation inside GetxController. -
StateMixin<
T>
Extensions
- AnimationExtension on Widget
- Extension methods for adding animations to any Widget. These extensions provide a concise and convenient way to apply various animations to widgets using a fluent API.
- BoolExtension on bool
- ContextExt on BuildContext
- DateTimeExtension on DateTime
- DoubleExt on double
- Extension for converting doubles to various Duration types and formatting numbers
- DoubleExtension on double
- DurationExt on int
- Extension for converting integers to various Duration types and formatting numbers
- ExtensionBottomSheet on GetInterface
- ExtensionDialog on GetInterface
- ExtensionSnackbar on GetInterface
- GetDurationUtils on Duration
- Duration utilities.
- GetDynamicUtils on dynamic
- Extension methods for dynamic type to provide utility functions.
- GetNumUtils on num
- Extension for various numerical utilities
- GetResetExt on GetInterface
- Extension methods for resetting GetX state and configurations
- GetStringUtils on String
- Inst on GetInterface
- IntExtension on int
-
IterableExt
on Iterable<
T> -
IterableExtensions
on Iterable<
T> - Extension for various iterable utilities
- JalaliExtension on Jalali
-
ListExtension
on List<
E> -
ListSortExtension
on List<
T> - LocalesIntl on GetInterface
- LoopEventsExt on GetInterface
- Extension methods for GetInterface to handle event loop operations.
-
MapExtension
on Map<
K, V> - ObjectExtension on Object
- OverlayExt on GetInterface
-
PagesListExt
on List<
GetPage> - Extension methods for list of GetPage objects
- PercentSized on double
- ReactiveT on T
- ResponsiveSize on num
-
Extension on
num
to provide responsive font size utilities. - ResponsiveText on String
- Extension on String to provide responsive text widget creation.
- ResponsiveTextNull on String?
- Extension on nullable String to provide responsive text styling.
-
RxBoolExt
on Rx<
bool> -
RxDoubleExt
on Rx<
double> -
RxIntExt
on Rx<
int> -
RxnBoolExt
on Rx<
bool?> -
RxnDoubleExt
on Rx<
double?> -
RxnIntExt
on Rx<
int?> -
RxnNumExt
on Rx<
T?> -
RxnStringExt
on Rx<
String?> -
RxNumExt
on Rx<
T> -
RxStringExt
on Rx<
String> - RxT on T
-
SetExtension
on Set<
E> - SmartDependencyManagement on GetInterface
- Extension for advanced dependency management with intelligent injection strategies
- SmartLazyPut on GetInterface
-
StateExt
on StateMixin<
T> - StringExtension on String
- StringNumberFormatter on String
- Converts a string to a formatted number representation
- Trans on String
- WidgetExtensions on Widget
- Extension for various widget utilities
- WidgetResponsiveX on Widget
- WidgetSliverBoxX on Widget
Constants
-
rtlLanguages
→ const List<
String>
Properties
- Get → _GetImpl
-
final
-
It replaces the Flutter Navigator, but needs no context.
You can to use navigator.push(YourRoute()) rather
Navigator.push(context, YourRoute());
no setter
Functions
-
ambiguate<
T> (T? value) → T? - This allows a value of type T or T? to be treated as a value of type T?.
-
bodyBytesToString(
Stream< List< bodyBytes, Map<int> >String, String> headers) → Future<String> -
debounce<
T> (RxInterface< T> listener, WorkerCallback<T> callback, {Duration? time, Function? onError, void onDone()?, bool? cancelOnError}) → Worker -
debounce is similar to interval, but sends the last value.
Useful for Anti DDos, every time the user stops typing for 1 second,
for instance.
When
listener
emits the last "value", whentime
hits, it callscallback
with the last "value" emitted. -
defaultLogWriterCallback(
String value, {bool isError = false}) → void - Default logging implementation for GetX framework.
-
ever<
T> (RxInterface< T> listener, WorkerCallback<T> callback, {dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) → Worker -
Called every time
listener
changes. As long as thecondition
returns true. -
everAll(
List< RxInterface> listeners, WorkerCallback callback, {dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) → Worker -
Similar to ever, but takes a list of
listeners
, the condition for thecallback
is common to alllisteners
, and thecallback
is executed to each one of them. The Worker is common to all, soworker.dispose()
will cancel all streams. -
interval<
T> (RxInterface< T> listener, WorkerCallback<T> callback, {Duration time = const Duration(seconds: 1), dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) → Worker -
Ignore all changes in
listener
duringtime
(1 sec by default) or untilcondition
is met (can be a bool expression or abool Function()
), It brings the 1st "value" since the period of time, so if you click a counter button 3 times in 1 sec, it will show you "1" (after 1 sec of the first press) click counter 3 times in 1 sec, it will show you "4" (after 1 sec) click counter 2 times in 1 sec, it will show you "7" (after 1 sec). -
once<
T> (RxInterface< T> listener, WorkerCallback<T> callback, {dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) → Worker -
once()
will execute only 1 time whencondition
is met and cancel the subscription to thelistener
stream right after that.condition
defines whencallback
is called, and can be a bool or abool Function()
.
Typedefs
-
AddSubscription<
T> = FutureOr< void> Function(LightSubscription<T> subs) -
AsyncInstanceBuilderCallback<
S> = Future< S> Function() - BindingBuilderCallback = void Function()
- Condition = bool Function()
-
Decoder<
T> = T Function(dynamic data) -
GetControllerBuilder<
T extends DisposableInterface> = Widget Function(T controller) - GetPageBuilder = Widget Function()
-
GetXControllerBuilder<
T extends DisposableInterface> = Widget Function(T controller) -
InjectorBuilderCallback<
S> = S Function(GetInstance) -
InstanceBuilderCallback<
S> = S Function() - LogWriterCallback = void Function(String text, {bool isError})
- Signature for log writer functions that can be used to customize logging behavior.
-
NotifierBuilder<
T> = Widget Function(T state) - OffsetBuilder = Offset Function(BuildContext, double)
- OnTap = void Function(GetSnackBar snack)
- Progress = dynamic Function(double percent)
-
RemoveSubscription<
T> = FutureOr< bool?> Function(LightSubscription<T> subs) -
ResponseInterceptor<
T> = Future< Response< Function(Request<T> ?>T> request, Type targetType, HttpClientResponse response) - SnackbarStatusCallback = void Function(SnackbarStatus? status)
-
ValueBuilderBuilder<
T> = Widget Function(T snapshot, ValueBuilderUpdateCallback< T> updater) -
ValueBuilderUpdateCallback<
T> = void Function(T snapshot) -
ValueUpdater<
T> = T Function() - WidgetCallback = Widget Function()
-
WorkerCallback<
T> = dynamic Function(T callback)