mrbrianevans / social-media-export-analyser

Analyse GDPR exports of your data from big social media companies
https://social-media-export-analyser-mrybc.ondigitalocean.app/
MIT License
1 stars 0 forks source link

Custom file upload component #38

Open mrbrianevans opened 2 years ago

mrbrianevans commented 2 years ago

Currently using filepond as the upload component, but it has some serious performance issues when uploading a lot of files. More than a hundred files takes quite a while to process. This is not acceptable because data exports can contain many files. This performance issue was tested using the native input[type=file] HTML element, and it could easily accept thousands of uploads in a few milliseconds, so the issue is related to the filepond component, or the usage of it.

The upload component from Vaadin was investigated, but it is suited to sending files to the server rather than processing them in the browser.

A new file upload component should be designed (using vaadin components), which has good performance and matches the overall styling of the website.

This is currently low priority because its not essential to the basic functioning of the website, and the current system does work, even if its slow for hundreds of files.

mrbrianevans commented 2 years ago

See https://carbon-components-svelte.onrender.com/components/FileUploader#drop-container for IBM file uploader.

mrbrianevans commented 2 years ago

The tabs to select a file should double as the file upload drop zone to remove repetition in the UI. At the moment, the files are listed twice: once in the upload component and once in the tabs.