Skip to content
Laravel plupload support - Handle large file uploads
JavaScript PHP CSS
Branch: master
Clone or download
Pull request Compare This branch is 1 commit ahead, 9 commits behind jildertmiedema:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Laravel plupload support.

Handeling chunked uploads.


Install using composer

composer require jildertmiedema/laravel-plupload

Add the provider to config/app.php

'providers' => [

If you want to use te build in builder insert the facade

'aliases' => array(
    'Plupload' => JildertMiedema\LaravelPlupload\Facades\Plupload::class,

To publish the assets:

php artisan vendor:publish

Receiving files

Use this route to receive a file on the url /upload. Of course you can place this is a controller.

Route::post('/upload', function()
    return Plupload::receive('file', function ($file)
        $file->move(storage_path() . '/test/', $file->getClientOriginalName());

        return 'ready';

Sending files

There are 3 ways to send files with this plugin.

1. Use default plupload html

Use the examples found on the plupload site.


If you are encountering a Token Mismatch Exception;

TokenMismatchException in VerifyCsrfToken.php line 53:

add in your blade file

<meta name="csrf-token" content="{{ csrf_token() }}">

in your JS file, add

headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')



	// General settings
	runtimes: 'html5,flash,silverlight,html4',
	url: '/upload/',
	chunk_size: '200kb',
    rename: false,
    dragdrop: true,
	// add X-CSRF-TOKEN in headers attribute to fix this issue
	headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
	// add more overrides; see documentation...


2. Simple plupload builder

To use the builder for creating send form you can use this function:

echo Plupload::make([
    'url' => 'upload',
    'chunk_size' => '100kb',

Note: The options given to the make function are found on in the pluload documentation.

3. Extended plupload builder

echo Plupload::init([
    'url' => 'upload',
    'chunk_size' => '100kb',


Other packages supporting plupload:

You can’t perform that action at this time.