Download the PHP package thibedev/laravel-dropzone-chunk without Composer
On this page you can find all versions of the php package thibedev/laravel-dropzone-chunk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package laravel-dropzone-chunk
Laravel Dropzone Chunk Upload
Just a little Laravel package that help to handle requests from dropzone.js out of the box. It can be adapted for other front end libraries with few configuration options.
This package works with Laravel 9 only.
Installation
1. Install via composer
2. Publish the config (Optional)
Usage
After the installation, you can use the Facade provided : ChunkService If you use dropzone and local storage, you can use this library without any configuration. It is as simple as doing
Once all the chunks will be uploaded, $result will be an array containing the name and the path of the uploaded file.
You can provide 3 more arguments to ChunkService::process() method :
- The name of the request input file, default 'file'
- The path where you want to save the uploaded file, default '/temp'
- A boolean to keep the original file name, default false
If you want to use another frontend provider than dropzone, you can publish the config and change the request_template key or you can use the environment variables. The uuid should be a unique id The chunkindex is the actual chunk index And the totalchunkcount is the total chunk Quite easy :)
About the storage disk, I haven't tried it with s3 or ftp but it should work, let me know if it works for you !
By default, it will use the local storage, create a temp directory, save all the chunks with a .part extension and finally merge them all in the temp directory with the uuid as name and the original file extension. You can change the temp directory name, the chunk extension and the export disk using the config file or the env vars.
There is two exemples in the exemples directory of this repo.
I know this is not the best library and it might be improved a lot but it does the job and I didn't find any other one that works with Laravel 9...