The setup for this plugin is too complicated. See:<p><a href="https://github.com/blueimp/jQuery-File-Upload/wiki/Setup" rel="nofollow">https://github.com/blueimp/jQuery-File-Upload/wiki/Setup</a><p>I think the API and abstraction should be better thought out to be just 1 js file include instead.<p>Other comments:<p>Good use of FileData and multipart builder for handling multiple browsers. However I thought Firefox also supported sending files with FileData() object, so why is xhr.sendAsBinary necessary? As far as I know, xhr.sendAsBinary is not in the w3 draft and is being deprecated by Firefox, as it's a FF proprietary method. Perhaps that part of the code could be removed?