get 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
- 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
, 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. - 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. -
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> -
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- withbuilder
method you return the widget to build. 2- with methodsdesktop
,tablet
,phone
,watch
. the specific method will be built when the screen type matches the method when the screen isScreenType.Tablet
thetablet
method will be exuded and so on. Note if you use this method please set the propertyalwaysUseBuilder
to false Withsettings
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> - 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 useRx
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
- SnackBarQueue
- 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 theBOTTOM
- 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
-
PageRouteReportMixin<
T> -
RouteReportMixin<
T extends StatefulWidget> -
RouterListenerMixin<
T extends StatefulWidget> -
RxObjectMixin<
T> -
global object that registers against
GetX
andObx
, and allows the reactivity of thoseWidgets
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>
Extensions
- AnimationExtension on Widget
- BoolExtension on bool
- ContextExt on BuildContext
- DoubleExt on double
- DoubleExtension on double
- DurationExt on int
- ExtensionBottomSheet on GetInterface
- ExtensionDialog on GetInterface
- ExtensionSnackbar on GetInterface
-
FirstWhereOrNullExt
on List<
T> - GetDurationUtils on Duration
- Duration utilities.
- GetDynamicUtils on dynamic
- GetNumUtils on num
- GetResetExt on GetInterface
- GetStringUtils on String
- Inst on GetInterface
- IntExtension on int
-
IterableExt
on Iterable<
T> -
IterableExtensions
on Iterable<
T> -
ListExtension
on List<
E> - LocalesIntl on GetInterface
- LoopEventsExt on GetInterface
-
MapExtension
on Map<
K, V> - OverlayExt on GetInterface
- PageArgExt on BuildContext
-
PagesListExt
on List<
GetPage> - ReadExt on BuildContext
- ResetInstance on GetInterface
-
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
- RxTnew on Object
-
This method will replace the old
.obs
method. It's a breaking change, but it is essential to avoid conflicts with the new dart 3 features. T will be inferred by contextual type inference rather than the extension type. -
SetExtension
on Set<
E> -
StateExt
on StateMixin<
T> -
StatusDataExt
on GetStatus<
T> - StringExtension on String
- Trans on String
- WatchExt on BuildContext
- WidgetMarginX on Widget
- Add margin property to widget
- WidgetPaddingX on Widget
- add Padding Property to widget
- WidgetSliverBoxX on Widget
- Allows you to insert widgets inside a CustomScrollView
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> (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", whentime
hits, it callscallback
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 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> (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
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> (GetListenable< 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()
. -
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< 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() - VoidCallback = void Function()
- WidgetCallback = Widget Function()
-
WorkerCallback<
T> = dynamic Function(T callback)
Exceptions / Errors
-
BindError<
T>