interact.js

JavaScript drag and drop, resizing and gestures with inertia and snapping