The stable v1 portable reorder and drag-and-drop contract for React Native.
npm install react-native-reorderableCompatibility matrix
| Dependency | Supported range |
|---|---|
| React Native | 0.82 – 0.86 (New Architecture, Hermes) |
| React | 19.1 – 19.x |
| Reanimated | 4.3 – 4.6 |
| Gesture Handler | 3.x |
| Worklets | 0.8 – 0.12 |
| iOS | 15.1+ |
| Android | API 24+ |
Optional peer entrypoints: react-native-reorderable/flash-list (FlashList 2.3+) and react-native-reorderable/legend-list (Legend List 3.3+).
The exact published artifact is validated in clean consumers at three profiles:
- Minimum — React Native 0.82.1, React 19.1.1, Reanimated 4.3.0, Gesture Handler 3.0.0, Worklets 0.8.1
- Maximum — React Native 0.86.2, React 19.2.3, Reanimated 4.5.3, Gesture Handler 3.2.1, Worklets 0.11.4
- Expo — SDK 57.0.14 development build at the maximum profile
Portable guarantees
Across both the native and fallback engines, the contract guarantees:
- Application-owned data and selection
- Identity-based committed reorder and drag-and-drop outcomes
- Atomic canonical multi-selection
- Semantic destination acceptance
- Cancellation on every normative lifecycle input
- Accessible reorder and drop actions
- List auto-scroll
Native SwiftUI reorder is capability-dependent on iOS 27+; supported older iOS versions and Android use the fallback engine. Engine presentation may differ while application-observable semantics remain portable.
Provenance
Published by the automated release workflow with SLSA v1 build provenance. Verify with npm audit signatures.
What's Changed
- ci: isolate release candidate concurrency by @thiagobrez in #48
- ci: isolate release and device-contract sessions by @thiagobrez in #49
- fix(ci): stabilize iOS release device contracts by @thiagobrez in #50
- chore: release package by @github-actions[bot] in #51
- docs(adr): drop the screenshot-feedback proof from ADR 0006 by @thiagobrez in #61
- docs(adr): amend ADR 0006 with the gate placement map (#57) by @thiagobrez in #62
- ci: route iOS 26 pointer scenarios through Detox and excise the screenshot-feedback apparatus by @thiagobrez in #87
- test: add drag render-path backstop by @thiagobrez in #89
- test(ci): delete the YAML-regex change-detector tests, keep the script-execution tests (#66) by @thiagobrez in #90
New Contributors
- @thiagobrez made their first contribution in #48
- @github-actions[bot] made their first contribution in #51
Full Changelog: https://github.com/thiagobrez/react-native-reorderable/commits/v1.0.0