PHPackages                             kkosmider/filament-dropzone - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. kkosmider/filament-dropzone

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

kkosmider/filament-dropzone
===========================

Filament dropzone component

0.5.2(1y ago)1621[1 issues](https://github.com/shepard153/filament-dropzone/issues)MITJavaScript

Since Oct 4Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/shepard153/filament-dropzone)[ Packagist](https://packagist.org/packages/kkosmider/filament-dropzone)[ RSS](/packages/kkosmider-filament-dropzone/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (7)Dependencies (1)Versions (17)Used By (0)

About
-----

[](#about)

Filament Dropzone is a package that provides a Dropzone component for the Filament admin panel. Main purpose of this package is to provide a simple way to allow chunked uploads in Filament/Livewire applications without the need to write custom JavaScript code.
Dropzone component extends `Filament\Forms\Components\BaseFileUpload` and uses some of its methods. See below for more information.

Installation
------------

[](#installation)

```
composer require kkosmider/filament-dropzone
```

Usage
-----

[](#usage)

### Basic usage:

[](#basic-usage)

```
use Kkosmider\FilamentDropzone\Forms\Components\Dropzone;

Dropzone::make('upload')
    ->uploadEndpointUrl('/api/upload-document')
    ->autoProcessQueue()
    ->allowMultiple()
    ->parallelUploads(4)
    ->clearOnFinish()
    ->directory('documents')
    ->acceptedFiles('application/pdf,.docx,.doc,application/vnd.openxmlformats-officedocument.wordprocessingml.document'),
```

### Chunking uploads:

[](#chunking-uploads)

```
Dropzone::make('upload')
    ->acceptedFiles('video/*')
    ->uploadEndpointUrl('/api/upload-video')
    ->chunking()
    ->maxFilesize(30000)  // 30GB
    ->chunkSize(40000000) // 40MB
    ->retryChunks()
    ->directory('videos')
    ->parallelChunkUploads()
    ->required(),
```

As seen above, in order for uploads to work you need to provide an endpoint URL where the files will be uploaded. Example of a chunked upload endpoint:

```
$request->validate([
    'file' => 'required|file',
]);

// Dropzone sends additional data with each chunk. Check dropzone.js documentation for more info.
$chunkIndex = (int) $request->input('dzchunkindex');
$chunksTotal = (int) $request->input('dztotalchunkcount');

$fileName = $request->file('file')->getClientOriginalName();

$chunkName = $fileName . '.part' . $chunkIndex;

if ($chunksTotal === 0) {
    $this->putToStorage($request->file('file'), $fileName);
} else {
    $this->putToStorage($request->file('file'), '/chunks/' . $chunkName);
}

// If all chunks have been uploaded, merge them into one file and delete the chunks
if ($chunkIndex === $chunksTotal - 1) {
    $filePath = $this->directory . DIRECTORY_SEPARATOR . $fileName;

    for ($i = 0; $i < $chunksTotal; $i++) {
        $chunkPath = $this->directory . '/chunks/' . $fileName . '.part' . $i;

        File::append($this->storage->path($filePath), File::get($this->storage->path($chunkPath)));

        $this->storage->delete($chunkPath);
    }
}

// Return response 200 so Dropzone knows the file was uploaded successfully
return response()->json([
   'chunk' => $chunkName,
]);
```

Available methods:
------------------

[](#available-methods)

```
maxFilesize()
acceptedFiles()
chunkSize()
chunking()
allowMultiple()
parallelUploads()
parallelChunkUploads()
autoProcessQueue()
uploadEndpointUrl()
retryChunks()
retryChunksLimit()
clearOnFinish()
directory()
diskName()
maxVideoDuration()

```

ToDo:
-----

[](#todo)

- Built-in upload endpoint
- Methods documentation
- Implement more BaseFileUpload methods
- Rename current ones to match BaseFileUpload methods if they do the same

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance28

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

6

Last Release

418d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a71e2a7197c09a5960d3b3bac9402a14a516521354f107c5144076c448248b42?d=identicon)[shepard153](/maintainers/shepard153)

---

Top Contributors

[![shepard153](https://avatars.githubusercontent.com/u/78200901?v=4)](https://github.com/shepard153 "shepard153 (15 commits)")

### Embed Badge

![Health badge](/badges/kkosmider-filament-dropzone/health.svg)

```
[![Health](https://phpackages.com/badges/kkosmider-filament-dropzone/health.svg)](https://phpackages.com/packages/kkosmider-filament-dropzone)
```

###  Alternatives

[kirschbaum-development/commentions

A package to allow you to create comments, tag users and more

12369.2k](/packages/kirschbaum-development-commentions)[pelmered/filament-money-field

94162.4k1](/packages/pelmered-filament-money-field)[asmit/resized-column

Resizeable column for filament

4857.4k1](/packages/asmit-resized-column)[josespinal/filament-record-navigation

Record navigation from views

3142.0k2](/packages/josespinal-filament-record-navigation)[asmit/filament-mention

A Laravel Filament package for implementing a customizable mention editor with support for tagging users or entities.

4416.2k](/packages/asmit-filament-mention)[monzer/filament-workflows

Automation made easy!

646.3k](/packages/monzer-filament-workflows)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
