1
Update dependencies
Update your After updating your package.json, install the new dependencies with your package manager of choice.
package.json and install the new packages:2
Migrate context provider
Update your context provider. The new DragDropProvider replaces the legacy
DndContext:The new provider gives you access to the
manager instance in event handlers, enabling more advanced control over the drag and drop system.3
Update draggable components
Update your draggable components using the new useDraggable hook:
4
Update droppable components
Update your droppable components using the new useDroppable hook:
5
Update drag overlay
The DragOverlay component has been simplified:
6
Migrate sortable components
Update your sortable components using the new useSortable hook:Use the array manipulation helpers from
@dnd-kit/helpers to handle reordering.API reference
A quick lookup for common legacy APIs and their new equivalents, organized by category.Context & Provider
Events
Sensors
The legacy If you don’t configure it, the default already differentiates pointer types. See Configuring sensors for the React-specific guide and the PointerSensor docs for the full default behavior.
MouseSensor and TouchSensor have been merged into a single PointerSensor that handles mouse, touch, and pen input via the native Pointer Events API. You can still apply different behavior per input type by passing a function to activationConstraints and branching on event.pointerType ('mouse', 'touch', or 'pen'):Collision detection
Modifiers
See the React modifiers guide for usage examples.Sortable
SortableContext is no longer needed. Sortable items register and coordinate with the DragDropProvider automatically when you use useSortable — there’s no wrapping context to configure. Use the type and accept options on useSortable to control which items can be sorted together.Next steps
Quickstart guide
Build beautiful drag and drop interfaces in minutes with the new dnd kit
Managing sortable state
Use the
move helper from @dnd-kit/helpers or manage state manuallyUsing modifiers
Restrict movement to an element, axis, or snap to a grid in React
Customizing feedback
Configure drag feedback, clone overlays, and drop animations in React