taye/interact.js
JavaScript drag and drop, resizing and multi-touch gestures with inertia and snapping for modern browsers (and also IE9+) observed · 2026-08-28
Health v2 · maintenance only
75/100
- Activity 95
- Release rhythm 35
- Longevity 100
Flags: no_releases
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 5064
- days_rel: n/a
- days_push: 32
- n_releases_24m: 0
Adoption not part of the score
12925 stars · 804 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
interact.js is a standalone JavaScript library for drag and drop, resizing, and multi-touch gestures with inertia and snapping, supporting HTML and SVG elements across modern browsers and IE9+. It provides a unified pointer-event API without moving DOM elements itself, leaving visual feedback entirely to the developer.
Use cases
- add drag and drop to web app elements
- implement resizable panels in the browser
- handle multi-touch pinch and gesture interactions
- build draggable canvas drawing tools
- snap dragged elements to a grid
- unify touch and mouse event handling
- make SVG elements draggable
When to choose
- you need fine-grained control over drag feedback rather than out-of-the-box movement
- you need multi-touch and simultaneous interactions in vanilla JS
- you must support older browsers like IE9+
- you want a framework-agnostic, standalone library with TypeScript types
When to avoid
- you want built-in visual feedback, list reordering, or React/Vue components out of the box
- you need a full-featured UI framework rather than a focused interaction library
- your project already uses a framework with its own drag-and-drop ecosystem
Facets
library · maturity stable
ui-components animation frontend web-development browser cross-platform drag-and-drop multi-touch gestures snapping inertia svg typescript vanilla-javascript
5 sources
- readme: https://github.com/taye/interact.js · fetched 2026-08-28 · eeffe247f747
- homepage: http://interactjs.io/ · fetched 2026-08-29 · 95f71247281f
- site_page: https://interactjs.io/docs · fetched 2026-08-29 · 0c669779ac5e
- site_page: https://interactjs.io/docs/api/classes/core_Interactable.Interactable.html · fetched 2026-08-29 · 886b719041f5
- registry_npm: https://registry.npmjs.org/interact.js · fetched 2026-08-29 · 3c2d6ff88ebb
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| taye/interact.js | main | 75 |
For agents
markdown · JSON · MCP: product_card(name="taye/interact.js")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem