Drop Zone

A drop zone is an area into which one or more objects can be dragged and dropped.

<DropZone>
  <UploadIcon className="size-5 text-fg-muted" />
</DropZone>

Installation

npx shadcn@latest add @dotui/drop-zone

Usage

Use drop zones to allow users to drag and drop files or content into a designated area.

import { DropZone, DropZoneLabel } from "@/components/ui/drop-zone";
<DropZone>
	<DropZoneLabel>Drop files here</DropZoneLabel>
</DropZone>

Playground

Use the controls below to experiment with different drop zone props and see the live preview and code update.

Drop files here
<DropZone>
  <DropZoneLabel>Drop files here</DropZoneLabel>
</DropZone>

Examples

Drag and drop files here
Drop files here
Drag and drop files here
Drag me
Drag me
Droppable
Drag and drop files here

API Reference

DropZone

A drop zone is an area into which one or multiple objects can be dragged and dropped.

PropType
ReactNode | function
((types: DragTypes, allowedOperations: DropOperation[]) => DropOperation)
boolean
DOMRenderFunction<"div", DropZoneRenderProps>

DropZoneLabel

Missing description.

PropType
union
string
DOMRenderFunction<any, any>

Last updated on 6/3/2026