File Drop
A recessed drop zone with no outline at rest; while files hover it lifts, warms and shows a dashed outline that flows inward.
$149 once · every Pro piece
Customize
Files land as rows that expand into place, with middle-truncated names; rejected files say why. The demo simulates uploads: a 1px line with a hot head runs along each row, then a check draws.
Install
npx shadcn@latest add @obsyde/file-dropNeeds your licence key · Get Pro
Usage
Import it from where the CLI puts it, or copy the files below by hand.
import { FileDrop } from '@/components/obsyde/ember/file-drop/FileDrop';
export function Example() {
return (
<FileDrop label="Files" />
);
}
Files
What you get with Pro: plain React, TypeScript and CSS, with no dependencies.
ember/file-drop/FileDrop.tsxcomponentember/file-drop/file-drop.cssstylesember/file-drop/FileDropDemo.tsxdemoember/forms-kit/kit.tsxsharedember/shared/spring.tssharedember/shared/accent.tssharedember/shared/ember.cssshared
API
| Prop | Type | Default |
|---|---|---|
accentAccent | 'ember' | 'volt' | 'arc' | 'ember' |
labelLabel | string | 'Files' |
acceptAccept | string | — |
multipleMultiple | boolean | true |
maxSizeMbMax size MB (0 = none) | number | 0 |
simulateUploadSimulate upload | boolean | true |