Skip to content

A fast and lightweight base library for creating draggable interactions

License

Notifications You must be signed in to change notification settings

mckravchyk/microdrag

Repository files navigation

Microdrag

Microdrag is a base library for creating draggable interactions.

NOTE: Microdrag is work in progress. The API will change and bugs are expected.

Features:

  • Lightweight core with a plugin system ensures no unnecessary processing while dragging
  • Custom frame of reference (i.e. viewport, document.body or any container can be the frame of reference)
  • Dragging in a scrollable container (mousewheel while dragging and scrolling the container when dragging the element towards a boundary)
  • Multi-touch drag of multiple items at once
  • Allows to filter dragged element position to modify or restrict its movement

Built-in plugins:

  • Containment plugin allows to restrict the movement of the dragged item
  • Snap plugin makes the dragged item snap to edges
  • Ref Frame Scroll plugin enables scrolling of the reference frame container when the dragged item approaches its boundary

This is not a drag and drop library, although a drag and drop plugin will be implemented at some point.

NOTE: Currently this library is something I have made only for myself. Lack of documentation is purposeful, it's not really meant for public use at this point and the API will change a lot.

About

A fast and lightweight base library for creating draggable interactions

Resources

License

Stars

Watchers

Forks

Packages

No packages published