react-beautiful-dnd README

The project's README from github.com/atlassian/react-beautiful-dnd. As one markdown file: README.md.

🔒 Archived

This project is now archived and is deprecated on npm. If you are still using react-beautiful-dnd, we have put together some resources to help you move forward. To see our ongoing work in the drag and drop problem space, head to Pragmatic drag and drop.

We are so grateful to everybody who contributed in big and small ways to this project.

Cheers



react beautiful dnd logo

react-beautiful-dnd (rbd)

Beautiful and accessible drag and drop for lists with React

CircleCI branch npm

quote application example

Play with this example if you want!

Core characteristics

Get started 👩‍🏫

We have created a free course on egghead.io 🥚 to help you get started with react-beautiful-dnd as quickly as possible.

course-logo

Currently supported feature set ✅

Motivation 🤔

react-beautiful-dnd exists to create beautiful drag and drop for lists that anyone can use - even people who cannot see. For a good overview of the history and motivations of the project you can take a look at these external resources:

Not for everyone ✌️

There are a lot of libraries out there that allow for drag and drop interactions within React. Most notable of these is the amazing react-dnd. It does an incredible job at providing a great set of drag and drop primitives which work especially well with the wildly inconsistent html5 drag and drop feature. react-beautiful-dnd is a higher level abstraction specifically built for lists (vertical, horizontal, movement between lists, nested lists and so on). Within that subset of functionality react-beautiful-dnd offers a powerful, natural and beautiful drag and drop experience. However, it does not provide the breadth of functionality offered by react-dnd. So react-beautiful-dnd might not be for you depending on what your use case is.

Documentation 📖

About 👋

Sensors 🔉

The ways in which somebody can start and control a drag

API 🏋️‍

diagram

Guides 🗺

Patterns 👷‍

Support 👩‍⚕️

Read this in other languages 🌎

Creator ✍️

Alex Reardon @alexandereardon

Alex is no longer personally maintaining this project. The other wonderful maintainers are carrying this project forward.

Maintainers

Collaborators 🤝

react-beautiful-dnd (atlassian/react-beautiful-dnd)

drag-and-drop
Searching Database…

33.9K ·GitHub
archived
What is this?A React library for building beautiful, accessible drag and drop interactions for lists, supporting vertical and horizontal lists, movement between lists, and nested lists.
Is this a general drag-and-drop toolkit or something more specific?It is a higher-level abstraction built specifically for lists, not a general-purpose drag and drop primitive library like react-dnd.
How do I add it to a project?Install it as an npm/yarn dependency and wrap the parts of your app that need drag and drop with its DragDropContext, Droppable, and Draggable components; there's also a free egghead.io course to get started.
What does it depend on under the hood?It's built on React and relies on supporting packages like css-box-model, memoize-one, redux and react-redux internally.
Is this still safe to use for a new project?No — the project is archived and deprecated on npm; the team recommends moving to Pragmatic drag and drop for ongoing work instead.
Who was this built for?Frontend developers building React apps with reorderable lists, including users who need strong screen reader and keyboard accessibility support.
What drag input methods does it support?Mouse, keyboard, and touch input are all supported out of the box, including auto scrolling during keyboard-driven drags.
Can it handle really large lists?Yes, it supports virtual lists, unlocking 10,000 items at 60fps.
Does it support dragging multiple items at once?Yes, multi-drag is part of the supported feature set alongside combining items and conditional dragging/dropping.
Why shouldn't I just use react-dnd instead?react-dnd offers broader low-level drag and drop primitives, while react-beautiful-dnd trades that breadth for a more polished, natural, and accessible experience specifically tailored to list reordering.
Creator
atlassian
Size
14.5 MB
Stars
33.9K
Age
9y
Commits · 90 Days