Works with any backend npm install Zero dependencies

Extension Filter

Only allow specific file extensions using allowedExtensions.

(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,
 allowedExtensions: '.jpg,.jpeg,.png,.gif,.pdf,.docx',
 onValidationError: function(msg, name) { log((name||'file') + ': ' + msg); }
 });
})();