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, all GetPages and navigation methods (like Get.to()) have a binding 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.
ConditionalNavigation
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>
GetNavConfig
A navigation configuration class that enables direct navigation to sub-routes and manages the current navigation state in GetX.
GetNavigator
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 use Rx 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 and Obx, and allows the reactivity of those Widgets 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.
GetNavigation on GetInterface
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<int>> bodyBytes, Map<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", when time hits, it calls callback 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 the condition 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 the callback is common to all listeners, and the callback is executed to each one of them. The Worker is common to all, so worker.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 during time (1 sec by default) or until condition is met (can be a bool expression or a bool 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 when condition is met and cancel the subscription to the listener stream right after that. condition defines when callback is called, and can be a bool or a bool 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<T>?> Function(Request<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)