structyl

File Upload

stable

A drag-and-drop file input with validation.

Basic usage

Click to upload or drag and drop

Examples

With accepted types and size limit

Restrict uploads to images with a 5 MB size cap.

Click to upload or drag and drop

Upload constraints

FileUpload supports multiple files, accept filters, max size and max count.

Upload PDFs or images up to 5 MB

    Features

    • Drag-and-drop dropzone.
    • accept / size / count limits.

    Installation

    bash
    pnpm dlx structyl add file-upload

    API Reference

    FileUpload.Root

    A drag-and-drop file input.

    PropTypeDefault
    valueFile[]

    Controlled file list.

    onValueChange(files: File[]) => void

    Called when files change.

    acceptstring

    Accepted MIME types / extensions.

    multipleboolean

    Allow multiple files.

    false
    maxSizenumber

    Maximum file size in bytes.

    maxFilesnumber

    Maximum number of files.

    FileUpload.Dropzone

    The drop target.

    PropTypeDefault

    FileUpload.Input

    The hidden native file input.

    PropTypeDefault
    File Upload | structyl