FileUpload
Drag-and-drop zone with a file list. Supports accept, multiple, and maxSize. Controlled or uncontrolled.
$npx shadcn@latest add https://ui.btng.studio/r/file-upload
Single file
Click or drop. Selecting a file replaces the previous one.
Multiple with controlled state
Pass multiple to allow many files; drive the list via files + onFilesChange.