Drag & Drop
Touch-Friendly Drag and Drop Library for Vanilla JS – Dragster.js
A lightweight yet robust vanilla JS drag and drop library for desktop and mobile. See npm setup, options, callbacks, and API methods.
Data-Driven Drag-and-Drop Library for Vanilla JS – dnd-manager
A lightweight vanilla JS library for data-driven drag-and-drop with full pointer event support, auto-scroll, and a clean callback API for any framework.
Lightweight JS Sorting Library with Native HTML5 Drag and Drop – SortableJS
A simple yet fully customizable javascript draggable library that makes a list of items sortable/reordered by using native Html5 drag and drop API.
Touch-Friendly JavaScript Drag and Drop Sortable Library – JSort
Vanilla JavaScript drag-and-drop sortable library with touch support, smooth animations, and zero dependencies.
Select Multiple Elements With Mouse Drag & Touch Gestures – Selectables
Implement drag selection in web apps with Selectables. Supports touch, collision detection modes, programmatic control. Lightweight vanilla JavaScript.
Minimal Image Panning Library – LC-Mouse-Drag
Tiny & Memory-optimized Drag and Drop Library – snap-dnd
A lightweight, performant JavaScript drag and drop library with zero dependencies. Works with Web Components, Shadow DOM, and Lit Elements.
Mobile-First Drag and Drop Alternative for List Reordering – picknplace.js
A lightweight JavaScript library that replaces complex drag and drop API with an two-step pick-and-place interaction pattern. Works perfectly on mobile devices.
Draggable HTML/SVG Elements – PlainDraggable
PlainDraggable is a simple, performant library which enables draggable functionality on any HTML and SVG elements with snapping and boundary support.