PanResponder vs Gestures

PanResponder Versus Gesture Handler

Both recognize drags; they differ in where the decisions are made. With PanResponder, every move event crosses to JavaScript, your callback decides, and the result crosses back to move the view. With Gesture Handler 6,788 (Gesture Handler), native recognizers decide on the UI thread and, with Reanimated 11,010 , the view moves there too.

PanResponder and Gesture Handler compared
Aspect PanResponder Gesture Handler
Install Built in Native module, development build
Where recognition runs JavaScript thread UI thread
Busy JavaScript thread Drag stutters or lags Drag stays smooth
Built-in gestures Only raw pan data Tap, pan, pinch, rotation, fling, long press
Composition Manual flags Exclusive, Simultaneous, Race
Native scroll views Can fight over touches Coordinates with them

PanResponder still suits libraries that must avoid native dependencies and simple drags on quiet screens. For anything touched all day, such as swipeable rows, sheets and carousels, use Gesture Handler, as BookNest's cart does (Swipeable Cart Item).