Upload Dropzone
FreeSampleA dropzone with per-file progress, retry for failures and a clear completion state. Bring your own upload function.
- forms
- upload
- feedback
Drop files to upload
Customize
These controls show a few ways to adapt it. The source is fully editable.
Install
Not published yetnpx shadcn@latest add @uicoolkit/upload-dropzoneInstall commands go live when this item ships to the registry.
Dependencies
- motion
Use with an agent
Copy a prompt with this component, your current preview settings and links to its docs.
Add the UICoolKit "Upload Dropzone" component (upload-dropzone) to this project. Docs: https://uicoolkit.com/components/upload-dropzone Agent docs: https://uicoolkit.com/components/upload-dropzone.md Install: npx shadcn@latest add @uicoolkit/upload-dropzone Preview settings to match: accent Ember, radius 12px, motion on. Use the documented props and className hooks rather than editing internals, and wire it to this app's real state. (Note: this is a sample item from the UICoolKit website shell and is not published yet.)
<UploadDropzone
accept={{ "image/*": [] }}
upload={(file, onProgress) => uploadToS3(file, onProgress)}
/>| Prop | Type | Default |
|---|---|---|
uploadYour upload implementation. | (file, onProgress) => Promise<void> | — |
acceptAccepted MIME types and extensions. | Record<string, string[]> | — |
maxFilesLimit before new drops are rejected. | number | — |
classNameMerged onto the root after defaults, so consumer styles win. | string | — |
motionDisable animation or tune duration, easing and spring values. Reduced motion is honored by default. | boolean | MotionOptions | true |
Every part accepts className, and consumer classes are merged last so they win. Control state from your own data, replace any content, and tune or disable motion.
<UploadDropzone
className="rounded-none border-2 border-black bg-yellow-300 font-mono"
motion={{ duration: 0.2 }}
/>- The dropzone is also a keyboard-operable file button.
- Progress uses role=progressbar; failures move focus to Retry.
An original UICoolKit component, designed and built from scratch.
Free items are MIT licensed. Pro items are licensed per purchase.