Skip to content

Dragula vs Sortable

Which should you use? A side-by-side look at what each one does, who it suits, what it costs, how hard it is to set up, and where each falls short.

Dragula

Open source · MIT

A small JavaScript library for drag and drop between lists and containers.

Sortable

Open source · MIT

A small JavaScript library for drag-and-drop reordering of lists, with no framework required.

The short answer

Choose Dragula if you need…

  • Front-end developers who want drag-and-drop without a large framework
  • Developers building sortable lists or kanban-style boards in plain JavaScript
  • Projects that want a small, dependency-light drag-and-drop option

Choose Sortable if you need…

  • Web developers adding reorderable lists to a site or app
  • Teams using React, Vue, Angular, or similar frameworks who want a framework-specific wrapper
  • Projects that need drag handles, multi-drag, or moving items between lists
  • Developers who want a library with a simple options-based API

Side-by-side

DragulaSortable
TypeLibraryLibrary
PriceFree and open sourceFree and open source
LicenceMITMIT
GitHub stars22.1k31.2k
Setup difficultyBeginnerBeginner
How you get itSee the READMEInstall with a package manager
Main languageJavaScriptJavaScript
Last code update2 years ago8 months ago

What each one is

Dragula

Dragula is a JavaScript library that lets web developers add drag-and-drop behavior to page elements, such as moving items between lists. The project describes itself as simple, and it is listed under the front-end and vanilla JavaScript topics. The README provided here was truncated and empty, so details beyond the basic description are limited.

Sortable

Sortable is a JavaScript library that lets people reorder list items by dragging them, either within one list or between lists. It works with touch devices and modern browsers, and does not need jQuery or a specific UI framework. Developers add it to a page to make lists sortable without writing their own drag logic.

Best for

Dragula

  • Front-end developers who want drag-and-drop without a large framework
  • Developers building sortable lists or kanban-style boards in plain JavaScript
  • Projects that want a small, dependency-light drag-and-drop option

Sortable

  • Web developers adding reorderable lists to a site or app
  • Teams using React, Vue, Angular, or similar frameworks who want a framework-specific wrapper
  • Projects that need drag handles, multi-drag, or moving items between lists
  • Developers who want a library with a simple options-based API

Strengths

Dragula

  • Described by its author as simple to use
  • Written in plain JavaScript, per its topics
  • Released under the permissive MIT license

Sortable

  • Works on touch devices and modern browsers, per the README
  • Simple API with many documented options and callbacks such as onEnd and onAdd
  • Has framework wrappers listed in the README for several popular frameworks

Not ideal for

Dragula

  • Non-developers, since it requires writing JavaScript to use
  • Projects that need drag-and-drop features the README does not describe, because the README provided was empty and features could not be verified

Sortable

  • Non-developers who want a finished app; this is a code library that must be added to a project
  • Projects needing drag-and-drop for non-list layouts, since the README focuses on lists
  • Anyone needing guaranteed support for very old browsers beyond what the README states (it mentions IE9)

Trade-offs

Dragula

  • The README provided was empty, so documentation quality could not be verified here
  • No published release is listed, so version stability is unclear
  • Last code push was June 2024, so recent maintenance activity is uncertain

Sortable

  • Requires writing JavaScript and HTML integration; not a drop-in tool for non-coders
  • Some advanced behavior depends on plugins that must be mounted separately
  • The README is truncated, so full API details must be checked in the project's documentation

Getting started

Dragula

Clone the repository

git clone https://github.com/bevacqua/dragula
Step-by-step guide: how to use Dragula

Sortable

Install with NPM

npm install sortablejs --save

Install with Bower

bower install --save sortablejs
Step-by-step guide: how to use Sortable

Frequently asked questions

What is the difference between Dragula and Sortable?

Dragula: A small JavaScript library for drag and drop between lists and containers. Sortable: A small JavaScript library for drag-and-drop reordering of lists, with no framework required. Dragula suits front-end developers who want drag-and-drop without a large framework, while Sortable suits web developers adding reorderable lists to a site or app.

Are Dragula and Sortable free?

Dragula: Free and open source. Sortable: Free and open source.

Is Dragula or Sortable more popular?

Sortable has more GitHub stars (31.2k) than Dragula (22.1k). Popularity isn't the same as fit — check which one matches your use case above.

What are other alternatives to Dragula and Sortable?

Other options people compare them with include FilePond, interact.js, Vue.Draggable, Lenis, dnd-kit.

Keep comparing

Built from our catalogue entries for both products: open-source details come from each project's README (AI-assisted, refreshed weekly) and GitHub data; AI-tool details are editorial. Spotted something wrong? Let us know from either product's page.