Works with any backend npm install Zero dependencies
Chunk Events Console

Trace every chunk-level event: start, complete, retry, and assembly.

(function() {
    var logEl = document.getElementById('log');
    function log(m) { var d = document.createElement('div'); d.className='pkg-log-entry'; d.textContent=m; logEl.appendChild(d); logEl.scrollTop=logEl.scrollHeight; }
    new MultipleUpload('#demo', {
        uploadUrl: '/api/upload',
        multiple: true,
        chunked: true,
        chunkSize: '512KB',
        chunkConcurrency: 2,
        onChunkComplete: function(file, idx, total) {
            log('Chunk ' + (idx+1) + '/' + total + ' done for ' + file.name);
        },
        onRetry: function(file, idx, attempt) {
            log('Retrying chunk ' + idx + ' (attempt ' + attempt + ') for ' + file.name);
        },
        onTaskComplete: function(task, result) {
            log('Assembly complete: ' + task.fileName + ' -> ' + (result.fileGuid || 'ok'));
        },
        onTaskError: function(task, err) {
            log('FAILED: ' + task.fileName + ' - ' + err);
        }
    });
})();