NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4232 most downloaded on npm
Declarative API exposing native platform touch and gesture system to React Native
Last release today
17 Sep 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
323 releases · first in 2016
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
fix(Android): apply numberOfPointers config to the pointer requirement in LongPressGestureHandler by @prashanFOMO in #4253
zIndex handling by @j-piasecki in #4257Swipeable actions container by @jamesacklin in #4192opacity from Swipeable action panels by @m-bert in #4271build.gradle by @m-bert in #4248testID property in production environments by @j-piasecki in #4266.rnrepo-cache directory within the Metro config by @radoslawrolka in #4262Full Changelog: v3.0.1...v3.0.2
Support React Native 0.86 by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4166
dispatchesReanimatedEvent from initial config by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4221rootContainerStyle prop to ReanimatedDrawerLayout by @jr-k in https://github.com/software-mansion/react-native-gesture-handler/pull/3846HoverGestureHandler by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4220ReanimatedDrawerLayout by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4234freeze by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4244expo to stable 56 by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4227shouldCancelWhenOutside default in Native on Android by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4242react-native/../react-native resolution for aliases by @kitten in https://github.com/software-mansion/react-native-gesture-handler/pull/4232Full Changelog: https://github.com/software-mansion/react-native-gesture-handler/compare/v3.0.0...v3.0.1
dispatchesReanimatedEvent from initial config by @m-bert in #4221rootContainerStyle prop to ReanimatedDrawerLayout by @jr-k in #3846HoverGestureHandler by @j-piasecki in #4220ReanimatedDrawerLayout by @m-bert in #4234freeze by @m-bert in #4244expo to stable 56 by @m-bert in #4227shouldCancelWhenOutside default in Native on Android by @m-bert in #4242react-native/../react-native resolution for aliases by @kitten in #4232Full Changelog: v3.0.0...v3.0.1
Remove deprecated components by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3734
Stable release of Gesture Handler 3 - rebuilt for the New Architecture, introducing the new hook-based API, a new Touchable component, and a deeper Reanimated integration, among many others.
setGestureState to the Reanimated UI runtime by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3207NativeDetector <-> Reanimated integration by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3617onChange callback references by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3631Animated.Event in onUpdate callback by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3630onUpdate crash by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3636AnimatedEvent action type from NativeDetector by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3646dispatchesAnimatedEvents by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3650dispatchesAnimatedEvents from the native detector by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3652NativeViewGestureHandler to NativeDetector by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3638NativeViewGestureHandler to NativeDetector by @akwasniewski in https://github.com/software-mansion/react-native-gesture-handler/pull/3653override keyword to TypeScript part of codebase by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3667useHandler by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3674sync-architectures script from commit hook by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3681SharedValues in handler config by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3658ConcurrentModificationException by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3691expo-example by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3690Reanimated from JS by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3682any in gesture config type by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3709name property to handlers by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3729changeEventCalculator to handlers by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3708SharedValue type to config. by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3717handleGestureEvent for Animated.Event by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3748worklet detection in config by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3745onPointerMove on hover on gestures other than Hover by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3727utils into multiple files by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3746runOnJS to config by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3743hasWorkletEventHandlers by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3758enabled prop by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3726node in DFS CI by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3774RNGestureHandlerEnabledRootView and gestureHandlerRootHOC by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3780DiagonalDirections type by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3795gestureEvents by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3799GestureHandlerRootView by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3798onUpdate from discrete gestures by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3811Native gesture by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3802onTouchesCancelled to onTouchesCancel by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3818VirtualDetector/InterceptingGestureDetector and reduce the number of renders by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3813VirtualDetector part of the public API by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3825InterceptingGestureDetector throw when not rendered under GHRootView by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3829Gesture suffix by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3828useEvent by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3836handlerData when passing event to user-defined callbacks by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3840useMultipleGestures to useCompetingGestures by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3848onStart/onEnd to onActivate/onDeactivate by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3847InterceptingGestureDetector with Text example by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3851createAnimatedComponent when possible by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3837testID prop by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3838ScrollView by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3867avgTouches by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3869cancelsTouchesInView by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3870direction type in Fling by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3872runCallback types by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3860hoverEffect to effect by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3878handlerTag to events by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3881ScrollView detection when used with NativeDetector by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3888testID to native side in dev by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3883tag to handlerTag by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3916display: contents based button styling by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3634onBegin not being called when the native recognizer skips the BEGAN state by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3932Reanimated availability check to JS side by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3935shouldCancelWhenOutside not tracking the view by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3942HitSlop type in config. by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3946Activity by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3967PureNativeButton by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3972GestureHandlerRootView by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3970createNativeWrapper by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3971GestureButton props type by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3973handleGesture:fromReset: by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3983Jest CI by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3988platforms optional parameter by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3992pointerType in Hover gesture by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3989HandlerData by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/3980FlatList & Ref types by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4002fillInDefaultValues warning by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4004createNativeWrapper (#3971)" by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4001Text component by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4003exactOptionalPropertyTypes support by @YevheniiKotyrlo in https://github.com/software-mansion/react-native-gesture-handler/pull/4012LegacyPressable by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4016numberOfPointers to Native gesture events by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4023onFinalize callback in Tap by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4029onUpdate to Native gesture by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4034yarn by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4035NativeWrapperProps as type by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4030Pan offset props to PropsToFilter by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4026FullWindowOverlay as the native root by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4039Clickable component by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4018display: contents based buttons with a single-view implementation by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4044children to button mock by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4054commonjs by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4069Clickable to Touchable by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4063Touchable by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4022Rotation handler by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4079enabled with disabled prop on Clickable by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4057Pinch and Rotation by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4078commonjs references by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4083invokeNullableMethod by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4084t-rex-ui by @patrycjakalinska in https://github.com/software-mansion/react-native-gesture-handler/pull/4019AGENTS.md by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4085import rules by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4087onDeactivate and onFinalize by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/3887simple-import-sort by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4092Intercepting and Virtual detectors hit testing by @Copilot in https://github.com/software-mansion/react-native-gesture-handler/pull/4095forwardRef by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4093hitSlop on native detector by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4049numberOfPointers: 0 by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4098Touchable animation ending in the wrong state by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4099onActiveStateChange from Touchable by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4101NativeViewGestureHandler by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4102worklets if babel plugin was not used by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4107Touchable behavior when nested within gesture handlers by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/41060 duration animation correctly on Touchable by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4113cancelOnLeave prop to Touchable by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4105Switch component by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4112Switch input only in direct children by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4122Pressable not calling onPress* callbacks by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4124LegacyPressable not emitting onPressOut by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4121Touchable callback order by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4126detachHandlerWithTag definition by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4132Touchable by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4131onPointerCancel by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4133cancel on unregistered handlers by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4134createNativeWrapper from Touchable by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4138Hover by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4139enabled state diverging between the handler and its recognizer by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4140yieldsToNativeGestures property to native gesture by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4135Touchable instead of RectButton by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4136expo-example by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4151Native gesture in detector by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4130Pinch and Rotation with respect to iOS by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4153role on handler reset by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4154yieldsToNativeGestures to yieldsToContinuousGestures by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4152cancelsJSResponder prop to the gesture handlers by @coado in https://github.com/software-mansion/react-native-gesture-handler/pull/4094Pinch and Rotation by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4155role on non HTMLElement nodes by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4159Touchable component by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4146Touchable default underlay props by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4164RNRenderer import for React Native 0.86+ by @zoontek in https://github.com/software-mansion/react-native-gesture-handler/pull/4160Touchable animation duration props by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4165TextInput simultaneous relations by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4169dragOffsetFrom*Edge prop by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4168ScrollView invalid pointer id during navigation by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4177ReanimatedDrawerLayout types by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4178InterceptingGestureDetector not recognizing gestures by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4170Swipeable types by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4175Touchable state on sub-frame animations by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4181in: 0 by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4184testID by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4186Touchable children clipping by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4190onFinalize by @m-bert in https://github.com/software-mansion/react-native-gesture-handler/pull/4196BorderlessButton borderless by default by @j-piasecki in https://github.com/software-mansion/react-native-gesture-handler/pull/4200Full Changelog: https://github.com/software-mansion/react-native-gesture-handler/compare/v2.31.2...v3.0.0
Stable release of Gesture Handler 3 - rebuilt for the New Architecture, introducing the new hook-based API, a new Touchable component, and a deeper Reanimated integration, among many others.
setGestureState to the Reanimated UI runtime by @j-piasecki in #3207NativeDetector <-> Reanimated integration by @m-bert in #3617onChange callback references by @m-bert in #3631Animated.Event in onUpdate callback by @m-bert in #3630onUpdate crash by @m-bert in #3636AnimatedEvent action type from NativeDetector by @m-bert in #3646dispatchesAnimatedEvents by @m-bert in #3650dispatchesAnimatedEvents from the native detector by @j-piasecki in #3652NativeViewGestureHandler to NativeDetector by @m-bert in #3638NativeViewGestureHandler to NativeDetector by @akwasniewski in #3653override keyword to TypeScript part of codebase by @m-bert in #3667useHandler by @m-bert in #3674sync-architectures script from commit hook by @m-bert in #3681SharedValues in handler config by @m-bert in #3658ConcurrentModificationException by @m-bert in #3691expo-example by @m-bert in #3690Reanimated from JS by @m-bert in #3682any in gesture config type by @m-bert in #3709name property to handlers by @m-bert in #3729changeEventCalculator to handlers by @m-bert in #3708SharedValue type to config. by @m-bert in #3717handleGestureEvent for Animated.Event by @m-bert in #3748worklet detection in config by @m-bert in #3745onPointerMove on hover on gestures other than Hover by @m-bert in #3727utils into multiple files by @m-bert in #3746runOnJS to config by @m-bert in #3743hasWorkletEventHandlers by @m-bert in #3758enabled prop by @m-bert in #3726node in DFS CI by @m-bert in #3774RNGestureHandlerEnabledRootView and gestureHandlerRootHOC by @m-bert in #3780DiagonalDirections type by @j-piasecki in #3795gestureEvents by @m-bert in #3799GestureHandlerRootView by @m-bert in #3798onUpdate from discrete gestures by @j-piasecki in #3811Native gesture by @m-bert in #3802onTouchesCancelled to onTouchesCancel by @j-piasecki in #3818VirtualDetector/InterceptingGestureDetector and reduce the number of renders by @j-piasecki in #3813VirtualDetector part of the public API by @j-piasecki in #3825InterceptingGestureDetector throw when not rendered under GHRootView by @j-piasecki in #3829Gesture suffix by @j-piasecki in #3828useEvent by @j-piasecki in #3836handlerData when passing event to user-defined callbacks by @j-piasecki in #3840useMultipleGestures to useCompetingGestures by @j-piasecki in #3848onStart/onEnd to onActivate/onDeactivate by @j-piasecki in #3847InterceptingGestureDetector with Text example by @j-piasecki in #3851createAnimatedComponent when possible by @j-piasecki in #3837testID prop by Note truncated.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →