software-mansion/react-native-gesture-handler — explained in plain English
Analysis updated 2026-06-24
Add smooth swipe-to-dismiss or swipe-between-screens gestures to a React Native mobile app.
Build a Tinder-style draggable card with native-level performance on Android and iOS.
Replace sluggish JavaScript gesture handlers in an existing React Native app with native-thread recognition.
Create pinch-to-zoom or multi-finger gesture controls in a photo or map view.
| software-mansion/react-native-gesture-handler | steamdeckhomebrew/decky-loader | dinerojs/dinero.js | |
|---|---|---|---|
| Stars | 6,724 | 6,731 | 6,737 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | moderate | moderate | easy |
| Complexity | 2/5 | 3/5 | 2/5 |
| Audience | developer | general | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires React Native 0.82 or newer for v3, older projects should use v2 which supports back to React Native 0.63.
React Native is a tool for building mobile apps using JavaScript and React. One persistent challenge in this kind of app development is handling touch input: taps, swipes, and other interactions with the screen. By default, React Native manages these through its own JavaScript responder system, which runs on a background thread. That can make gesture recognition feel slow or unpredictable, especially when the app is busy doing other work at the same time. React Native Gesture Handler replaces this default system with one that runs directly on the device's native UI thread, meaning Android or iOS handles the gesture recognition itself rather than delegating it to JavaScript. According to the README, this makes touch interactions not only smooth but also dependable and deterministic, two qualities that are hard to guarantee when gesture tracking runs through a JavaScript layer. The library exposes a declarative API, so developers describe what they want to happen rather than writing step-by-step event handlers. Gestures are no longer routed through the JavaScript responder system at all, they are tracked at the platform level from start to finish. The project is maintained by Software Mansion with support from Shopify and Expo. It supports the three most recent minor versions of React Native. Version 3 requires React Native 0.82 or newer. Version 2 supports a much wider range of older releases going back to React Native 0.63, and a full compatibility table is in the official documentation. There is an example project included in the repository that developers can run on a connected Android or iOS device or emulator to try the API before integrating it into a real project. The library is open source under the MIT License.
A React Native library that moves touch and gesture recognition off the JavaScript thread and onto the native platform, making swipes, taps, and drags smooth and reliable on iOS and Android.
Mainly TypeScript. The stack also includes TypeScript, React Native, Java.
MIT license, use freely for any purpose, including commercial apps, with no restrictions beyond keeping the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.