Skip to content

The basic implementation for chunk upload with multiple providers support like jQuery-file-upload, pupload, DropZone and resumable.js

License

Notifications You must be signed in to change notification settings

sharpstream/laravel-chunk-upload

 
 

Repository files navigation

Laravel Chunk Upload

Total Downloads Build Status Latest Stable Version Latest Unstable Version License

Introduction

Supports Laravel from 5.2 to 9 (covered by integration tests for 7/8/9 versions).

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.

Supports feature as cross domains requests, automatic clean schedule and easy usage.

Example repository with integration tests can be found in laravel-chunk-upload-example.

Before adding pull requests read CONTRIBUTION.md. Help me fix your bugs by debugging your issues using XDEBUG (and try to do a fix - it will help you become better).

Installation

1. Install via composer

composer require pion/laravel-chunk-upload

2. Publish the config (Optional)

php artisan vendor:publish --provider="Pion\Laravel\ChunkUpload\Providers\ChunkUploadServiceProvider"

Usage

Setup consists of 3 steps:

  1. Integrate your controller that will handle the file upload. How to
  2. Set a route for the controller. How to
  3. 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 using 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.

Changelog

Can be found in releases.

Contribution or extending

Read contribution before your PR (and use example repository to run integration tests).

See CONTRIBUTING.md for how to contribute changes. All contributions are welcome.

Compatibility

Laravel 5/6 should be still supported but we are not testing them via automation sccripts

Version PHP
9.* 8.1-node-17
9.* 8.0-node-17
8.* 8.1-node-17
8.* 8.0-node-17
8.* 7.4-node-17
7.* 7.4-node-17

Copyright and License

laravel-chunk-upload was written by Martin Kluska and is released under the MIT License.

Copyright (c) 2016 and beyond Martin Kluska

About

The basic implementation for chunk upload with multiple providers support like jQuery-file-upload, pupload, DropZone and resumable.js

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%