MCPcopy Index your code
hub / github.com/software-mansion/react-native-gesture-handler

github.com/software-mansion/react-native-gesture-handler @v3.0.2 sqlite

repository ↗ · DeepWiki ↗ · release v3.0.2 ↗
1,744 symbols 4,038 edges 498 files 83 documented · 5% 36 cross-repo links
README

React Native Gesture Handler by Software Mansion

Ad Ad Ad

Declarative API exposing platform native touch and gesture system to React Native.

React Native Gesture Handler provides native-driven gesture management APIs for building best possible touch-based experiences in React Native.

With this library gestures are no longer controlled by the JS responder system, but instead are recognized and tracked in the UI thread. It makes touch interactions and gesture tracking not only smooth, but also dependable and deterministic.

Installation

Check getting started section of our docs for the detailed installation instructions.

Documentation

Check out our dedicated documentation page for info about this library, API reference and more: https://docs.swmansion.com/react-native-gesture-handler/docs/

Examples

If you want to play with the API but don't feel like trying it on a real app, you can run the example project. Clone the repo, go to the example folder and run:

yarn install

Run yarn start to start the metro bundler

Run yarn android or yarn ios (depending on which platform you want to run the example app on).

You will need to have an Android or iOS device or emulator connected.

React Native Support

react-native-gesture-handler supports the three latest minor releases of react-native.

Gesture Handler 3

Check out our compatibility table in documentation.

[!IMPORTANT] Minimal supported react-native version for Gesture Handler 3 is 0.82

Gesture Handler 2

version react-native version
2.28.0+ 0.79.0+
2.26.0+ 0.78.0+
2.25.0+ 0.76.0+
2.24.0+ 0.75.0+
2.21.0+ 0.74.0+
2.18.0+ 0.73.0+
2.16.0+ 0.68.0+
2.14.0+ 0.67.0+
2.10.0+ 0.64.0+
2.0.0+ 0.63.0+

It may be possible to use newer versions of react-native-gesture-handler on React Native with version <= 0.59 by reverse Jetifying. Read more on that here https://github.com/mikehardy/jetifier#to-reverse-jetify--convert-node_modules-dependencies-to-support-libraries

License

Gesture handler library is licensed under The MIT License.

Credits

This project has been build and is maintained thanks to the support from Shopify, Expo.io and Software Mansion

shopify expo swm

Community Discord

Join the Software Mansion Community Discord to chat about Gesture Handler or other Software Mansion libraries.

Gesture Handler is created by Software Mansion

Since 2012 Software Mansion is a software agency with experience in building web and mobile apps. We are Core React Native Contributors and experts in dealing with all kinds of React Native issues. We can help you build your next dream product – Hire us.

Extension points exported contracts — how you extend this code

OnScaleGestureListener (Interface)
The listener for receiving notifications when gestures occur. If you want to listen for all the different gestures then [2 …
packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/core/ScaleGestureDetector.java
CompatibilityEntry (Interface)
(no doc)
packages/docs-gesture-handler/components/Compatibility/index.tsx
MainScreenItemProps (Interface)
(no doc)
apps/common-app/App.tsx
RouteInfo (Interface)
(no doc)
apps/basic-example/src/Navigator.tsx
GestureHandlerDelegate (Interface)
(no doc) [1 implementers]
packages/react-native-gesture-handler/src/web/tools/GestureHandlerDelegate.ts
VersionProps (Interface)
(no doc)
packages/docs-gesture-handler/components/Compatibility/index.tsx
Example (Interface)
(no doc)
apps/common-app/src/common.tsx
NavigatorProps (Interface)
(no doc)
apps/basic-example/src/Navigator.tsx

Core symbols most depended-on inside this repo

create
called by 152
apps/basic-example/src/Navigator.tsx
get
called by 57
packages/react-native-gesture-handler/src/web/tools/LeastSquareSolver.ts
onEnd
called by 51
packages/react-native-gesture-handler/src/web/tools/GestureHandlerDelegate.ts
useGesture
called by 45
packages/react-native-gesture-handler/src/v3/hooks/useGesture.ts
push
called by 44
packages/react-native-gesture-handler/src/web/tools/CircularBuffer.ts
runOnJS
called by 42
packages/react-native-gesture-handler/src/handlers/gestures/gesture.ts
useTapGesture
called by 39
packages/react-native-gesture-handler/src/v3/hooks/gestures/tap/useTapGesture.ts
tagMessage
called by 37
packages/react-native-gesture-handler/src/utils.ts

Shape

Function 920
Method 479
Class 175
Interface 152
Enum 18

Languages

TypeScript98%
Java2%

Modules by API surface

packages/react-native-gesture-handler/src/web/handlers/GestureHandler.ts77 symbols
packages/react-native-gesture-handler/src/handlers/gestures/gesture.ts32 symbols
packages/react-native-gesture-handler/src/web/tools/GestureHandlerWebDelegate.ts31 symbols
packages/react-native-gesture-handler/src/web/tools/EventManager.ts30 symbols
packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/core/ScaleGestureDetector.java30 symbols
packages/react-native-gesture-handler/src/web/tools/GestureHandlerOrchestrator.ts29 symbols
packages/react-native-gesture-handler/src/jestUtils/jestUtils.ts29 symbols
packages/react-native-gesture-handler/src/web/handlers/PanGestureHandler.ts27 symbols
packages/react-native-gesture-handler/src/web/handlers/NativeViewGestureHandler.ts25 symbols
packages/react-native-gesture-handler/src/web/tools/PointerTracker.ts22 symbols
packages/react-native-gesture-handler/src/web/tools/LeastSquareSolver.ts21 symbols
packages/react-native-gesture-handler/src/web/handlers/TapGestureHandler.ts21 symbols

Dependencies from manifests, versioned

@babel/core7.25.2 · 1×
@babel/plugin-proposal-class-properties7.18.6 · 1×
@babel/plugin-proposal-export-namespace-from7.18.9 · 1×
@babel/preset-env7.24.4 · 1×
@babel/preset-react7.18.6 · 1×
@babel/preset-typescript7.21.0 · 1×
@babel/runtime7.25.0 · 1×
@docusaurus/core3.9.2 · 1×
@docusaurus/module-type-aliases3.9.2 · 1×
@docusaurus/plugin-client-redirects3.9.2 · 1×
@docusaurus/plugin-debug3.9.2 · 1×
@docusaurus/plugin-google-tag-manager3.9.2 · 1×

For agents

$ claude mcp add react-native-gesture-handler \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact