# wix-incubator/react-native-interactable

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/wix-incubator-react-native-interactable).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

5,174 stars · 494 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/wix-incubator/react-native-interactable
- awesome-repositories: https://awesome-repositories.com/repository/wix-incubator-react-native-interactable.md

## Description

React Native Interactable is a React Native library for building touch-driven, physics-based animated views on iOS and Android. A single wrapper component makes any child view draggable, and the view follows the finger with spring, friction, and damping behavior at 60 frames per second. Touch tracking and physics run in native code rather than JavaScript, so motion stays smooth without dropped frames.

Behavior is configured declaratively through props. Views can snap to the nearest of several defined points when released, with tunable damping and tension for each point. Springs, gravity wells, and friction regions can be attached to a view's center, optionally limited to a region of influence. Movement can be restricted to one axis, bounded with an adjustable bounce, or disabled. Alert areas report when the view's center enters or leaves a named region.

A dragged view's position or offset is exposed as an animated value, so other views can fade, scale, rotate, or move in sync with it. Callbacks report drag start and end, snap, and stop events along with positions and point identifiers. These pieces support common interface patterns such as swipeable cards, swipeable list-row actions, collapsible panels, draggable bottom sheets, and floating chat-head style bubbles.

On iOS, the native sources are packaged as a pod that targets iOS 7 and above and depends on the host framework's core pod.

## Tags

### Graphics & Multimedia

- [Interactive Gesture-Driven Animations](https://awesome-repositories.com/f/graphics-multimedia/custom-animation-effects/interactive-gesture-driven-animations.md) — Wraps any view in a draggable component that follows touch continuously with spring, friction, and damping behavior at 60 frames per second. ([source](https://github.com/wix-incubator/react-native-interactable/blob/master/README.md))

### Mobile Development

- [Draggable Native View Wrappers](https://awesome-repositories.com/f/mobile-development/draggable-native-view-wrappers.md) — Provides a single wrapper component that makes any child view draggable with spring, friction, damping, and boundary behavior.
- [Gesture Physics Libraries](https://awesome-repositories.com/f/mobile-development/react-native-ecosystem/react-native-libraries/gesture-physics-libraries.md) — Provides physics-based movement for draggable and swipeable React Native views that follow the finger with spring, friction, and damping behavior at 60 frames per second.
- [Mobile Gesture Interactions](https://awesome-repositories.com/f/mobile-development/mobile-gesture-interactions.md) — Builds touch-driven React Native screens where views follow the finger smoothly with spring, friction, and damping at 60 frames per second.
- [Gesture Physics Extensions](https://awesome-repositories.com/f/mobile-development/react-native-ecosystem/react-native-libraries/native-gesture-recognition-libraries/gesture-physics-extensions.md) — Makes any view draggable by touch with spring, friction, and damping physics running smoothly at 60 frames per second. ([source](https://github.com/wix-incubator/react-native-interactable#readme))

### Part of an Awesome List

- [UI Physics Coordinators](https://awesome-repositories.com/f/awesome-lists/ai/physics-simulation/spring-physics/ui-physics-coordinators.md) — Shapes view motion with springs, gravity wells, and friction regions attached to the view's center, so dragging feels elastic and natural.
- [Native Gesture Delegation](https://awesome-repositories.com/f/awesome-lists/devtools/touch-and-gestures/native-gesture-delegation.md) — Runs touch tracking and physics in native iOS and Android code so views follow the finger without dropping frames over the bridge.

### User Interface & Experience

- [Physics and Motion Dynamics](https://awesome-repositories.com/f/user-interface-experience/animation-and-motion-systems/physics-motion-dynamics.md) — Shapes view motion with springs, gravity wells, friction regions, and boundaries so interactions feel elastic and natural.
- [Interaction Physics](https://awesome-repositories.com/f/user-interface-experience/animation-and-motion-systems/physics-motion-dynamics/interaction-physics.md) — Attaches springs, gravity wells, and friction regions to a view's center so its motion feels natural and elastic. ([source](https://github.com/wix-incubator/react-native-interactable#readme))
- [Spring Animations](https://awesome-repositories.com/f/user-interface-experience/animation-and-motion-systems/physics-motion-dynamics/physics-based-animations/spring-animations.md) — Simulates view motion with springs, gravity wells, and friction regions attached to the view's center for elastic, natural settling. ([source](https://github.com/wix-incubator/react-native-interactable/blob/master/PROPS.md))
- [Snap Points](https://awesome-repositories.com/f/user-interface-experience/snap-points.md) — Defines target points a dragged view settles into on release, with tunable spring damping and tension for each point. ([source](https://github.com/wix-incubator/react-native-interactable/blob/master/PROPS.md))
- [Physics-Driven View Rendering](https://awesome-repositories.com/f/user-interface-experience/view-customizations/custom-view-rendering/physics-driven-view-rendering.md) — Applies springs, gravity wells, and friction regions to a view's movement so it attracts, repels, or slows naturally. ([source](https://github.com/wix-incubator/react-native-interactable/blob/master/README.md))
- [Bottom Sheets](https://awesome-repositories.com/f/user-interface-experience/bottom-sheets.md) — Supports draggable drawers, bottom sheets, and collapsible headers that settle at open or closed resting positions.
- [Drag-Linked Animated Values](https://awesome-repositories.com/f/user-interface-experience/drag-linked-animated-values.md) — Exposes a dragged view's position or offset as an animated value so other views can fade, scale, and move in sync.
- [Drag-Linked Animations](https://awesome-repositories.com/f/user-interface-experience/drag-linked-animations.md) — Exposes a dragged view's position as an animated value so other views fade, scale, rotate, or move in step with it.
- [Draggable Panels](https://awesome-repositories.com/f/user-interface-experience/draggable-panels.md) — Supports pulling a panel or bottom sheet up and down by hand and settling it at defined resting positions. ([source](https://github.com/wix-incubator/react-native-interactable/blob/master/UX-INSPIRATIONS.md))
- [Drag Event Callbacks](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/drag-operation-controls/drag-event-callbacks.md) — Reports drag start, drag end, snap, stop, and alert-area events from native code to JavaScript callbacks with positions and point identifiers.
- [Snap-to-Point Toolkits](https://awesome-repositories.com/f/user-interface-experience/interactive-ui-frameworks/snap-to-point-toolkits.md) — Settles dragged views at the nearest defined resting point on release, with tunable damping and tension, enabling swipeable cards, drawers, bottom sheets, and chat-head bubbles.
- [Movement Boundary Constraints](https://awesome-repositories.com/f/user-interface-experience/movement-boundary-constraints.md) — Limits horizontal and vertical travel of a view with an adjustable bounce at the limits, or locks movement to one axis. ([source](https://github.com/wix-incubator/react-native-interactable/blob/master/PROPS.md))
