get library

GetX is an extra-light and powerful multiplatform framework. It combines high performance state management, intelligent dependency injection, and route management in a quick and practical way.

Classes

BackButtonCallback
Bind<T>
BindElement<T>
The BindElement is responsible for injecting dependencies into the widget tree so that they can be observed
Binder<T>
Binding
Binding should be extended. 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.
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.
BindingsInterface<T>
Binds
BlurAnimation
BounceAnimation
CircularRevealClipper
CircularRevealTransition
ColorAnimation
CustomStatus<T>
CustomTransition
DeepCollectionEquality
DefaultEquality<E>
Dependencies
EmptyStatus<T>
Engine
ErrorStatus<T, S>
FadeInAnimation
FadeInTransition
FadeOutAnimation
FastList<T>
FlipAnimation
FormData
FullLifeCycleController
A controller with super lifecycles (including native lifecycles)
GetAnimatedBuilder<T>
GetAnimatedBuilderState<T>
GetBackGestureController<T>
GetBackGestureDetector<T>
GetBackGestureDetectorState<T>
GetBuilder<T extends GetxController>
GetConnect
GetConnectInterface
GetCupertinoApp
GetDelegate
GetHttpClient
GetInformationParser
GetInterface
GetInterface allows any auxiliary package to be merged into the "Get" class through extensions
GetListenable<T>
GetMaterialApp
GetMicrotask
GetMiddleware
The Page Middlewares. The Functions will be called in this order (( redirect -> onPageCalled -> onBindingsStart -> onPageBuildStart -> onPageBuilt -> onPageDispose ))
GetModalBottomSheetRoute<T>
GetNavigator
GetNotifier<T>
GetNotifier has a native status and state implementation, with the Get Lifecycle
GetObserver
GetPage<T>
GetPageRoute<T>
GetPlatform
GetQueue
GetResponsiveView<T>
Extend this widget to build responsive view. this widget contains the screen property that have all information about the screen size and type. You have two options to build it. 1- with builder method you return the widget to build. 2- with methods desktop, tablet,phone, watch. the specific method will be built when the screen type matches the method when the screen is ScreenType.Tablet the tablet method will be exuded and so on. Note if you use this method please set the property alwaysUseBuilder to false With settings property you can set the width limit for the screen types.
GetResponsiveWidget<T extends GetLifeCycleMixin>
GetRouterOutlet
GetSnackBar
GetSnackBarState
GetSocket
GetStatus<T>
GetUtils
GetView<T>
GetView is a great way of quickly access your Controller without having to call Get.find
GetWidget<S extends GetLifeCycleMixin>
GetWidget is a great way of quickly access your individual Controller without having to call Get.find
GetX<T extends GetLifeCycleMixin>
GetxController
GetxService
Unlike GetxController, which serves to control events on each of its pages, GetxService is not automatically disposed (nor can be removed with Get.delete()). It is ideal for situations where, once started, that service will remain in memory, such as Auth control for example. Only way to remove it is Get.reset().
GetXState<T extends GetLifeCycleMixin>
GraphQLResponse<T>
HeaderValue
IdentityEquality<E>
Equality of objects that compares only the identity of the objects.
IEquality<E>
A generic equality relation on objects.
IndexedRouteBuilder<T>
InheritedNavigator
InstanceInfo
IterableEquality<E>
Equality on iterables.
LeftToRightFadeTransition
ListEquality<E>
Equality on lists.
LoadingStatus<T>
MapEquality<K, V>
Equality on maps.
MiddlewareRunner
MiniStream<T>
MiniSubscription<T>
Module
ModuleState
MultipartFile
Node<T>
NoTransition
Observer
Obx
The simplest reactive widget in GetX.
ObxElement
ObxError
ObxStatelessWidget
A StatelessWidget than can listen reactive changes.
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
OpacityAnimation
PageRedirect
PageSettings
ParseRouteTree
PathDecoded
Response<T>
ResponsiveScreen
ResponsiveScreenSettings
RightToLeftFadeTransition
RotateAnimation
RouteDecoder
RouteListenerState
RouteReport
RouteReportState
RouterListener
RouterListenerInherited
RouterListenerState
RouterOutlet<TDelegate extends RouterDelegate<T>, T extends Object>
RouterOutletState<TDelegate extends RouterDelegate<T>, T extends Object>
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
A clean controller to be used with only Rx variables
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
RxList<E>
Create a list similar to List<T>
RxMap<K, V>
Rxn<T>
RxnBool
RxnDouble
RxnInt
RxnNum
RxnString
Rx class for String Type.
RxNum
RxSet<E>
RxString
Rx class for String Type.
ScaleAnimation
SetEquality<E>
Equality of sets.
SizeAnimation
SizeTransitions
SlideAnimation
SlideDownTransition
SlideInDownAnimation
SlideInLeftAnimation
SlideInRightAnimation
SlideInUpAnimation
SlideLeftTransition
SlideRightTransition
SlideTopTransition
SnackbarController
SpinAnimation
StateController<T>
A recommended way to use Getx with Future fetching
SuccessStatus<T>
SuperController<T>
A controller with super lifecycles (including native lifecycles) and StateMixins
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>
WaveAnimation
WobbleAnimation
Worker
Workers
ZoomInTransition

Enums

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
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
SnackHoverState
Indicates if the mouse entered or exited
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
GetLifeCycleMixin
The GetLifeCycle
GetPageRouteTransitionMixin<T>
GetResponsiveMixin
GetSingleTickerProviderStateMixin
Used like SingleTickerProviderMixin but only with Get Controllers. Simplifies AnimationController creation inside GetxController.
GetTickerProviderStateMixin
Used like TickerProviderMixin but only with Get Controllers. Simplifies multiple AnimationController creation inside GetxController.
GetxServiceMixin
Allow track difference between GetxServices and GetxControllers
IGetNavigation
PageRouteReportMixin<T>
RouteReportMixin<T extends StatefulWidget>
RouterListenerMixin<T extends StatefulWidget>
RxObjectMixin<T>
global object that registers against GetX and Obx, and allows the reactivity of those Widgets and Rx values.
ScrollMixin
this mixin allow to fetch data when the scroll is at the bottom or on the top
SingleGetTickerProviderMixin
Used like SingleTickerProviderMixin but only with Get Controllers. Simplifies AnimationController creation inside GetxController.
StatelessObserverComponent
a Component that can track changes in a reactive variable
StateMixin<T>

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>(GetListenable<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 logger from GetX
ever<T>(GetListenable<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>(GetListenable<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>(GetListenable<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().
removeLastHistory(String? url) → void
setUrlStrategy() → void

Typedefs

AsyncInstanceBuilderCallback<S> = Future<S> Function()
BindingBuilderCallback = void Function()
Decoder<T> = T Function(dynamic data)
FuturizeCallback<T> = Future<T> Function(VoidCallback fn)
GetControllerBuilder<T extends GetLifeCycleMixin> = Widget Function(T controller)
GetPageBuilder = Widget Function()
GetRouteAwarePageBuilder<T> = Widget Function([GetPageRoute<T>? route])
GetXControllerBuilder<T extends GetLifeCycleMixin> = Widget Function(T controller)
InitBuilder<T> = T Function()
InstanceBuilderCallback<S> = S Function()
InstanceCreateBuilderCallback<S> = S Function(BuildContext _)
LogWriterCallback = void Function(String text, {bool isError})
VoidCallback from logs
NotifierBuilder<T> = Widget Function(T state)
OffsetBuilder = Offset Function(BuildContext, double)
OnHover = void Function(GetSnackBar snack, SnackHoverState snackHoverState)
OnTap = void Function(GetSnackBar snack)
PrintFunctionCallback = void Function(String prefix, dynamic value, String info, {bool? isError})
Progress = dynamic Function(double percent)
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()
VoidCallback = void Function()
WidgetCallback = Widget Function()
WorkerCallback<T> = dynamic Function(T callback)

Exceptions / Errors

BindError<T>