{"adoption": {"forks": 44, "observed_at": "2026-08-28T04:03:24.498503+00:00", "stars": 1057}, "canonical_url": "https://ross.abutalabs.com/products/react-native-reanimated-dnd", "card": {"archived": false, "artifact_type": "library", "description": "A powerful, performant drag-and-drop library for React Native built on Reanimated 4 and Gesture Handler. Smooth 60fps animations, sortable lists & grids, collision detection, and full TypeScript support.", "domain": ["mobile-development", "frontend", "cross-platform"], "enriched": true, "function": ["animation", "ui-components", "state-management"], "health_score": 95, "homepage": "https://reanimated-dnd-docs.vercel.app/", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["entropyconquers/react-native-reanimated-dnd"], "name": "entropyconquers/react-native-reanimated-dnd", "platform": [], "pushed_at": "2026-07-30T12:53:40+00:00", "repo": "entropyconquers/react-native-reanimated-dnd", "stars": 1057, "tags": ["drag-and-drop", "reanimated", "gesture-handler", "sortable-lists", "collision-detection", "react-native", "ios", "android", "typescript", "expo"], "topics": [], "urls": [], "use_cases": ["add drag and drop to a react native app", "build sortable lists with drag handles", "implement draggable kanban-style grids", "detect drop targets with collision detection", "create smooth 60fps gesture animations in react native", "drag and drop in an expo app"], "what_it_is": "A drag-and-drop library for React Native built on Reanimated 4 and Gesture Handler, providing Draggable, Droppable, and Sortable components with 60fps UI-thread animations. It supports sortable lists and grids, multiple collision detection algorithms, and full TypeScript typing.", "when_to_avoid": ["building for the web rather than React Native", "your project uses an old React Native version without the New Architecture or Reanimated 4", "you need drag-and-drop for desktop frameworks"], "when_to_choose": ["building a React Native or Expo app needing performant drag-and-drop", "you want sortable lists or grids with smooth UI-thread animations", "you prefer a TypeScript-first, mobile-native DnD API"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/react-native-reanimated-dnd", "repo": "entropyconquers/react-native-reanimated-dnd", "role": "main", "score": 67}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.498503+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:57:56.876594+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c20fe8f98721d3bb14290a57a3cc94c7f2d21234ae42e3863107810daf152e25", "fetched_at": "2026-08-28T04:03:24.498503+00:00", "kind": "readme", "missing": false, "url": "https://github.com/entropyconquers/react-native-reanimated-dnd"}, {"content_hash": "af81d6e9a4f87666d5a28964eb71c3b69484846f2fb440f1677b606cf5962bef", "fetched_at": "2026-08-29T12:59:43.530401+00:00", "kind": "homepage", "missing": false, "url": "https://reanimated-dnd-docs.vercel.app/"}, {"content_hash": "3d894126d0c0b7e88bc510762dee79ed583351643246449720565e061d94be31", "fetched_at": "2026-08-29T12:59:43.539416+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/react-native-reanimated-dnd"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 33, "rhythm": 51}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 475, "days_push": 34, "days_rel": 170, "gap_med": 140.5, "n_releases_24m": 3}, "score": 67, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}