Easy to use service/library for chunked upload with supporting multiple JS libraries on top of Laravel's file upload with low memory footprint in mind. Currently supports Laravel 5+ (with 5.5 Auto discovery) with features as cross domains requests, automatic clean schedule and easy usage.
1. Install via composer
composer require pion/laravel-chunk-upload
2. Add the service provider (Laravel 5.4 and below - supports Auto discovery)
\Pion\Laravel\ChunkUpload\Providers\ChunkUploadServiceProvider::class
3. Publish the config (Laravel 5.2 and above, optional)
php artisan vendor:publish --provider="Pion\Laravel\ChunkUpload\Providers\ChunkUploadServiceProvider"
Setup is composed in 3 steps:
- Integrate your controller that will handle the file upload. How to
- Setting route for the controller. How to
- Choose your front-end provider below (we support multiple providers in single controller)
Library | Wiki | single & chunk upload | simultaneous uploads | In example project | Author |
---|---|---|---|---|---|
resumable.js | Wiki | ✔️ | ✔️ | ✔️ | @pionl |
DropZone | Wiki | ✔️ | ✔️ | ✔️ | @pionl |
jQuery-File-Upload | Wiki | ✔️ | ✖️ | ✔️ | @pionl |
Plupload | Wiki | ✔️ | ✖️ | ✖️ | @pionl |
simple uploader | ✖️ | ✔️ | ✖️ | ✖️ | @dyktek |
ng-file-upload | Wiki | ✔️ | ✖️ | ✖️ | @L3o-pold |
Simultaneous uploads: The library must send last chunk as last, otherwise the merging will not work correctly.
Custom disk: At this moment I recommend to use the basic storage setup (not linking public folder). It is not tested (Have free time to ensure it is working? PR the changes!).
For more detailed information (tips) use the Wiki or for working example continue to separate repository with example.
Can be found in releases.
See CONTRIBUTING.md for how to contribute changes. All contributions are welcome.
laravel-chunk-upload was written by Martin Kluska and is released under the MIT License.
Copyright (c) 2016-2018 Martin Kluska