← Back to blog
··12 min read

dnd-kit vs react-beautiful-dnd vs Pragmatic Drag and Drop 2026: Which Should You Use?

dnd-kitreact-beautiful-dndPragmatic Drag and DropDrag and DropReactKanbanDeveloper Tools
dnd-kit vs react-beautiful-dnd vs Pragmatic Drag and Drop 2026: Which Should You Use?

The Fact and the Axis

Every drag-and-drop debate in 2026 starts with one hard fact and then collapses onto one axis.

The fact: react-beautiful-dnd is deprecated and no longer maintained. Atlassian, which built it, officially ended its life and points people at a successor. It still runs, and it still powers a huge number of existing kanban boards and lists — but you should not start anything new on it.

That leaves a genuine choice between two live options, and it comes down to one question: do you want a batteries-included React abstraction, or a low-level, framework-agnostic foundation built on the browser's native drag-and-drop API?

  • dnd-kit is the modern React toolkit — hook-based, accessible, with a sortable preset for lists and kanban.
  • react-beautiful-dnd is the beautiful legacy one you should migrate off — lovely animations, but end-of-life.
  • Pragmatic Drag and Drop is the native, framework-agnostic successor — Atlassian's replacement, tiny core, powers Jira and Trello.
  • Everything else — bundle size, accessibility, kanban fit — hangs off that fact and that axis. And there is a practical point for anyone who ships code: the drag-and-drop library at the heart of a dashboard or project board is a dependency buyers inspect, so a dead one quietly signals dated code.

    First, Why the Library Choice Is Hard

    Drag and drop looks trivial and is not. A production reorderable list has to handle pointer, touch, and keyboard input; announce movement to screen readers; auto-scroll when you drag near an edge; work across multiple containers for a kanban board; and stay smooth under React re-renders. The library you pick decides how much of that you get for free versus assemble yourself — which is exactly the completeness-versus-control trade the axis above describes.

  • Get every hard case handled in React idioms and you lean toward dnd-kit.
  • Get a tiny, portable foundation on the native API and you lean toward Pragmatic Drag and Drop.
  • Inherit a screen already built on the old default and you are living with react-beautiful-dnd — the question is only when to migrate.
  • All three can build the same board. The differences are about maintenance, footprint, and how much the library does for you.

    TL;DR — The Comparison at a Glance

    dnd-kitreact-beautiful-dndPragmatic Drag and Drop
    TypeReact hook toolkitReact list libraryNative-API foundation
    Maintenance**Active****Deprecated / EOL****Active (Atlassian)**
    FrameworksReactReact**React, Vue, Svelte, vanilla**
    FoundationOwn sensor systemOwn engine**Native HTML5 DnD API**
    Bundle sizeLightweight, modularHeaviest**Tiny core**
    Sortable/kanban preset**Yes (@dnd-kit/sortable)**Lists/boards built inCompose yourself
    Accessibility**Keyboard + SR built in**Good (historically)Platform + guidance
    Best forMost React sortable workExisting screens onlyFramework-agnostic, minimal
    New projects?**Yes****No****Yes**

    The rest of this guide is what sits behind that table — and when each column is the one that decides.

    dnd-kit — The Modern React Toolkit

    dnd-kit is the tool most new React projects reach for, and the reason is fit: it speaks React.

    It is hook-based and idiomatic. You build behavior out of useDraggable and useDroppable, wrap sortable regions in its context, and compose the interaction the same way you compose the rest of a React component tree. No foreign mental model bolted onto your app.

    The sortable preset does the hard part. @dnd-kit/sortable handles reordering within a list and moving items between containers — the exact shape of a kanban or project board — with sensible collision detection so you are not hand-rolling hit testing.

    Input and accessibility are first-class. A sensor system covers pointer, touch, and keyboard, so items can be picked up and moved with the keyboard alone, and it ships screen-reader announcements for drag start, move, and drop. Accessibility is designed in, not an afterthought — the same production-ready discipline that separates a real feature from a demo.

    It is lightweight and modular with zero external deps. You pull in only the packages you use, so the footprint stays reasonable even though it implements its own engine rather than the native API.

    The trade-off is that it is React-only. If you need the same drag-and-drop across Vue or vanilla surfaces, dnd-kit does not follow you there.

    Reach for dnd-kit when you are building sortable lists, kanban columns, or reorderable UIs in React or Next.js and want a modern, accessible toolkit that gets you there fast. The safe default for most React work.

    dnd-kit's sortable preset is built for exactly the reorderable list and kanban patterns most React apps need

    dnd-kit's sortable preset is built for exactly the reorderable list and kanban patterns most React apps need

    react-beautiful-dnd — The Beautiful Legacy One

    react-beautiful-dnd earned its name: for years it produced the most natural-feeling drag animations in the React ecosystem, and it made building vertical and horizontal lists — and Trello-style boards — remarkably pleasant.

    Its strength was polish. The physics-y, snap-into-place motion felt better out of the box than almost anything else, and its droppable-and-draggable model was easy to reason about for simple lists.

    But it is end-of-life. Atlassian stopped maintaining it and pointed developers to a successor, so it no longer gets compatibility or security updates — and it has known friction with modern React, including strict-mode issues on React 18.

    It never covered the hard cases. Grid dragging, nested drag and drop, and other advanced patterns were always outside its scope, which is part of why a successor exists.

    The trade-off is the whole story. It is beautiful and familiar, and it is a dependency you should be leaving, not adopting.

    Reach for react-beautiful-dnd only when you already have it in a stable screen and migrating is not yet worth the effort. For anything new, pick one of the maintained options — and plan the migration of active screens deliberately, highest-risk first.

    Pragmatic Drag and Drop — The Native, Framework-Agnostic Successor

    Pragmatic Drag and Drop is Atlassian's official answer to "what replaces react-beautiful-dnd" — and it is a very different kind of tool.

    It is built on the native drag-and-drop API. Instead of implementing its own engine, it is a thin layer over the browser's built-in HTML5 drag-and-drop, which keeps the core tiny and leans on the platform for behavior.

    It is framework-agnostic. The same library works in React, Vue, Svelte, or plain JavaScript — so a design system or a company standardizing one interaction across multiple stacks can use it everywhere.

    It is battle-tested at scale. It powers Jira and Trello, so it is proven on some of the largest, most drag-heavy products in the world.

    It is incrementally adoptable and modular. A tiny core plus optional add-ons (auto-scroll, drop indicators, and more) means you take only what you need — the reason its minimal footprint is so small.

    The trade-off is that it is lower-level. It gives you robust primitives rather than a ready-made sortable component, so you assemble more of the kanban-and-card logic yourself compared with dnd-kit's preset.

    Reach for Pragmatic Drag and Drop when you want a future-proof, framework-agnostic foundation, the smallest possible footprint, or you are explicitly following Atlassian's migration path off react-beautiful-dnd.

    Pragmatic Drag and Drop powers Jira and Trello on a tiny native-API core that works across frameworks

    Pragmatic Drag and Drop powers Jira and Trello on a tiny native-API core that works across frameworks

    Head to Head

    Maintenance and future-proofing

    This is the first filter, and it eliminates one option: dnd-kit and Pragmatic Drag and Drop are actively maintained; react-beautiful-dnd is not. For anything new, the real contest is only between the first two.

    Framework coverage

    Pragmatic Drag and Drop wins decisively — React, Vue, Svelte, and vanilla under one library. dnd-kit is React-only, and react-beautiful-dnd is React-only. If you need one drag-and-drop across multiple frameworks, Pragmatic is the only one that spans them.

    Ergonomics and speed to build

    dnd-kit wins for React specifically: hooks plus the sortable preset get a list or kanban board working fast and idiomatically. Pragmatic Drag and Drop is lower-level, so you build more yourself. react-beautiful-dnd was easy for simple lists but is off the table for new code.

    Bundle size

    Pragmatic Drag and Drop is the smallest thanks to its native-API core and opt-in add-ons. dnd-kit is lightweight and modular but larger, since it implements its own engine. react-beautiful-dnd is the heaviest — and the least justifiable, being unmaintained.

    Accessibility

    dnd-kit ships keyboard sensors and screen-reader announcements as first-class defaults. Pragmatic Drag and Drop gives you the platform's behavior plus guidance and expects you to compose more of it. react-beautiful-dnd was historically strong here, but "historically" is the operative word. Whichever you choose, verify it like anything else that ships.

    Animation feel

    react-beautiful-dnd set the historical bar for natural motion; dnd-kit gives you smooth, configurable transitions and pairs cleanly with an animation library when you want more; Pragmatic Drag and Drop provides drop indicators and lets you drive polish yourself.

    Which One Should You Choose

    Strip away the detail and it comes down to three clean rules.

    You are building most React sortable or kanban work → dnd-kit. The modern React default: hook-based, accessible, with a sortable preset built for reorderable lists and project boards. The right starting point for the majority of new React drag-and-drop, and it pairs naturally with the rest of a React dashboard.

    You want a framework-agnostic, minimal, future-proof base → Pragmatic Drag and Drop. Atlassian's successor, built on the native API, tiny, and proven in Jira and Trello — the pick when you need one interaction across multiple frameworks, the smallest footprint, or the official migration path. Accept that it is lower-level.

    You already have react-beautiful-dnd → keep it running, plan the exit. Do not panic-rewrite a stable screen, but do not build anything new on it, and migrate active or React-18-strained surfaces to dnd-kit or Pragmatic Drag and Drop first.

    And the pragmatic 2026 take: for most teams, dnd-kit is the default for React sortable and kanban UIs; reach for Pragmatic Drag and Drop when framework independence or minimal size matters; and treat react-beautiful-dnd as maintenance-only.

    The Drag and Drop in the Templates You Sell

    If you build dashboards, kanban starters, or project-management templates to sell, the drag-and-drop library is not an implementation detail — it is a dependency buyers inspect, and it signals whether your code is current. A few rules keep it high-signal:

  • Ship a maintained library. dnd-kit or Pragmatic Drag and Drop — never react-beautiful-dnd. A deprecated dependency at the heart of the board tells a buyer the template is dated before they read a line of it.
  • Default to dnd-kit for React products. It is the recognized modern choice, so a buyer opening your React template sees professional, current infrastructure.
  • Support keyboard and touch. A board that only works with a mouse fails for mobile and accessibility — exactly the corner that separates a finished template from a demo.
  • Keep animation smooth. Reordering should feel natural; pair with an animation approach if you want extra polish.
  • Document how it is wired. One README section on how the drag-and-drop and persistence work saves the buyer hours and signals care.
  • A board that reorders smoothly, accessibly, and on a maintained library is one of the clearest ways to make a dashboard template feel finished — and finished is what sells.

    The Bottom Line

    All three can build the same reorderable board. The decision is not "which one drags an item" — it is which is still maintained, how portable you need it, and how much you want the library to do for you.

  • dnd-kit — the modern React toolkit: hook-based, accessible, modular, with a sortable preset for lists and kanban. Actively maintained and the right default for most new React drag-and-drop.
  • react-beautiful-dnd — the beautiful legacy one: lovely animations and a simple model, but deprecated and end-of-life. Keep it on existing screens; do not adopt it fresh.
  • Pragmatic Drag and Drop — the native, framework-agnostic successor: Atlassian's replacement, built on the browser's drag-and-drop API, tiny, portable across frameworks, and proven in Jira and Trello. Lower-level, so you build more yourself.
  • Reach for dnd-kit for most React sortable and kanban work; reach for Pragmatic Drag and Drop when you want a framework-agnostic, minimal, future-proof base; and treat react-beautiful-dnd as maintenance-only.

    Ready to turn what you build into income? List your dashboard or template on CodeCudos, see where drag-and-drop fits the wider build in our best tech stack for web apps in 2026 guide, browse the best React dashboard templates to buy, or make sure the whole thing reads as production-ready.

    Frequently asked questions

    Is react-beautiful-dnd dead, and what should I use instead?▾

    For new work, treat react-beautiful-dnd as end-of-life. Atlassian, which built it, has stopped active maintenance and publicly steered developers toward a successor, so it is no longer receiving the kind of updates you want a core interaction dependency to get — and it has known friction with modern React, including issues under React 18's strict mode. That does not mean every app using it breaks tomorrow; it still works, and it still powers an enormous number of existing vertical and horizontal lists and kanban boards, so there is no need to panic-rewrite a screen that is stable. But you should not start anything new on it. The two live replacements are dnd-kit and Pragmatic Drag and Drop. If you want to stay in a React-first, hook-based world and get sortable lists quickly, dnd-kit is the natural landing spot. If you specifically want Atlassian's own migration path or a framework-agnostic foundation, Pragmatic Drag and Drop is the successor they built. The honest 2026 framing is that react-beautiful-dnd is a maintenance-only choice: fine to keep running, wrong to adopt fresh.

    What is the real difference between dnd-kit and Pragmatic Drag and Drop?▾

    They sit at different levels of abstraction and portability. dnd-kit is a React-native toolkit: you compose your drag-and-drop behavior out of React hooks (useDraggable, useDroppable) and a sortable preset, and it ships opinionated helpers — sensors for pointer, keyboard, and touch input, collision detection, and accessible defaults — so a sortable list or kanban board comes together quickly and idiomatically inside a React tree. Its world is React, and that focus is its strength. Pragmatic Drag and Drop is deliberately lower-level and framework-agnostic: it is a thin layer built directly on the browser's native HTML5 drag-and-drop API, with a tiny core and optional add-on packages, and it works the same whether you are in React, Vue, Svelte, or plain JavaScript. Because it leans on the platform, it is very small and very portable, but you assemble more of the experience yourself — it gives you robust primitives rather than a ready-made sortable component. So the trade is convenience versus portability and footprint: dnd-kit gives you more out of the box for React specifically, while Pragmatic Drag and Drop gives you a smaller, future-proof foundation you can use anywhere and grow into.

    Which is best for building a kanban board?▾

    For a new React kanban board in 2026, dnd-kit is the most common and pragmatic default, with Pragmatic Drag and Drop as the strong future-proof alternative. A kanban board needs reorderable cards within a column and movement of cards between columns, plus keyboard and touch support if you care about accessibility and mobile — and dnd-kit's sortable preset was designed for exactly this shape of problem, so you get multi-container sorting, sensible collision detection, and accessible keyboard dragging without building it all from scratch. That is why so many React kanban and project-board UIs are built on it today. Pragmatic Drag and Drop can absolutely build a kanban board too, and it is what powers Trello and Jira, so it is proven at the highest scale; the difference is that you work closer to the native API and wire up more of the column-and-card logic yourself, in exchange for a smaller footprint and framework independence. react-beautiful-dnd was historically the classic kanban choice and is still visible in many existing boards, but since it is no longer maintained you should not start a new board on it. Practical answer: dnd-kit for speed and React-idiomatic ergonomics, Pragmatic Drag and Drop when you want the Atlassian-grade, framework-agnostic foundation.

    How do the bundle sizes compare?▾

    Footprint is one of Pragmatic Drag and Drop's headline advantages, but the honest comparison depends on how much of each library you actually use. Pragmatic Drag and Drop is built around a very small core because it offloads most of the heavy lifting to the browser's native drag-and-drop API, then lets you opt into add-on packages (for auto-scrolling, drop indicators, and the like) only if you need them — so a minimal setup is genuinely tiny. dnd-kit is a React abstraction that implements its own sensor and collision system rather than relying purely on the native API, so its core plus the sortable preset is larger than Pragmatic's minimal core, though it is still lightweight by modern standards and it is modular, so you only pull in the packages you use. react-beautiful-dnd is the heaviest of the three and, being unmaintained, is the one whose weight is least justifiable for new code. If shaving every kilobyte matters — a marketing site with one small reorderable widget, or a mobile-first app — Pragmatic Drag and Drop's native-API approach wins on size. If you are building a rich sorting-heavy interface in React, dnd-kit's slightly larger footprint usually pays for itself in development speed.

    Is dnd-kit accessible and does it support keyboard and touch?▾

    Yes — accessibility and multiple input types are among dnd-kit's core design goals, which is a big reason it became the React default. It ships a sensor system that handles pointer, mouse, touch, and keyboard input, so a user can pick up and move an item with the keyboard alone, not just a mouse or finger — critical for anyone who cannot use a pointer. It also provides accessible defaults such as screen-reader announcements for drag start, movement, and drop, and customizable instructions, so assistive-technology users can follow what is happening during a drag. You still have to use it responsibly — meaningful labels, sensible announcement text, and testing with a keyboard and a screen reader — but the primitives are there and designed to be accessible from the start rather than bolted on. Pragmatic Drag and Drop, being built on the native drag-and-drop API and framework-agnostic, gives you the platform's behavior plus its own guidance and add-ons, but expects you to compose more of the accessible experience yourself. Whichever you pick, treat accessibility as part of production-ready, and verify it the same way you verify anything else that ships.

    Should I migrate an existing react-beautiful-dnd app right now?▾

    Not reflexively — migrate on a schedule driven by risk and roadmap, not panic. Because react-beautiful-dnd is unmaintained rather than removed, an existing board or list built on it will keep working, so a stable screen that you rarely touch is not an emergency. The real reasons to migrate are forward-looking: you are on or moving to a newer React version and hitting strict-mode or compatibility friction, you need features react-beautiful-dnd never supported well (like grid or nested dragging), or you simply do not want a core interaction resting on a dependency that will not get security or compatibility fixes. When you do migrate, the two targets are dnd-kit and Pragmatic Drag and Drop, and the choice mirrors the new-project decision: dnd-kit if you want to stay React-idiomatic and get a sortable system quickly, Pragmatic Drag and Drop if you want Atlassian's own successor and a framework-agnostic base. Either way, treat it as a real refactor — the APIs differ meaningfully from react-beautiful-dnd's droppable-and-draggable model — and migrate the highest-risk or most actively developed surfaces first, leaving stable legacy screens for last.

    Which drag-and-drop library should I ship in a template I sell?▾

    For a template, dashboard, or kanban starter you intend to sell in 2026, ship a maintained library — which means dnd-kit or Pragmatic Drag and Drop, never react-beautiful-dnd — and default to dnd-kit for most React products. The reasoning is buyer trust: a buyer opening your admin dashboard or project-management template will look at the dependencies, and finding a deprecated, unmaintained drag-and-drop library at the heart of the board is a red flag that says the code is dated and will need rework, which directly undercuts the value of what you are selling. dnd-kit is the safe default because it is the recognized modern React choice, it is actively maintained, and it handles the sortable and kanban patterns most templates need with good accessibility out of the box, so buyers see current, professional infrastructure. Pragmatic Drag and Drop is a compelling choice if your template targets teams who want a framework-agnostic or Atlassian-aligned base, or if minimal bundle size is a selling point. Whichever you pick, do the things that make any template read as production-ready: keep the dependency current, support keyboard and touch, and document how the drag-and-drop is wired — a board that reorders smoothly and accessibly is exactly the kind of detail that makes a template feel finished and sells better than one built on an abandoned library.

    Related guides

    Browse Quality-Scored Code

    Every listing on CodeCudos is analyzed for code quality, security, and documentation. Find production-ready components, templates, and apps — or sell your own code and keep 90%.

    Browse Marketplace →