These are ideas that are planned for specific versions or act as a backlog without a clear date.
PRs are welcome! Please do open an issue to discuss first if it's a big feature, priorities may have changed after something was added here.
3.0.0
Switch to ES Modules (ESM)
@uppy/image-editor: Remove silly hack to work around non-ESM.
Consider updating the name of @uppy/aws-s3 and @uppy/aws-s3-multipart to reflect it also supports Google Cloud Storage, Wasabi, and other cloud providers.
Consider fixing all locale files to follow the bcp-47 standard (nl_NL --> nl-NL)
4.0.0
core: change the preprocessing --> uploading flow to allow for files to start uploading right away after their preprocessing step has finished. See #1738 (@goto-but-stop)
companion: add more reliable tests to catch edge cases in companion. For example testing that oauth works for multiple companion instances that use a master Oauth domain.
Unplanned
Core
Make sure Uppy works well in VR
normalize file names when uploading from iOS? Can we do it with meta data? date? image-${index}? #678
robodog: Simplify Robodog — yes to easy few lines of code Transloadit experience, but currently it’s hard to choose between modes, decide what you need.
Consider how we can make Uppy smaller. Replace some packages with smaller alternatives. Talk about Socket.io again (@aduh95)
Better events — more data, consistency, naming (@Murderlon)
Dashboard
Dashboard UI should support 20 providers (@arturi)
Allow minimizing the Dashboard during upload (Uppy then becomes just a tiny progress indicator) (@arturi)
Display data like image resolution on file cards. should be done by thumbnail generator maybe #783
Possibility to edit/delete more than one file at once. example: add copyrigh info to 1000 files #118, #97
Possibility to work on already uploaded / in progress files. We'll just provide the fileId to the file-edit-complete event so that folks can more easily roll out custom code for this themselves #112, #113, #2063
WordPress Back-end plugin. Should be another Transloadit Integration based on Robodog Dashboard(?) we should add a provider, and possibly offer already-uploaded content
WordPress Front-end Gravity Forms Uppy plugin so one form field could be an Uppy-powered file input
rn: Uppy React Native works with Expo, now let's make it work without
rn: Uppy React Native works with Url Plugin, now let's make it work with Instagram
security: consider iframe / more security for Transloadit/Uppy integration widget and Uppy itself. Page can’t get files from Google Drive if its an iframe
statusbar: Add a confirmation of the cancel action (https://github.com/transloadit/uppy/issues/1418) as well as ask the user if they really want to navigate away while an upload is in progress via onbeforeunload (@arturi)
uploaders: consider not showing progress updates from the server after an upload’s been paused. Perhaps the button can be disabled and say Pausing.. until Companion has actually stopped transmitting updates (@arturi, @ifedapoolarewaju)
xhr: allow sending custom headers per file (as proposed in #785)
website: It would be nice in the long run to have a dynamic package builder here right on the website where you can select the plugins you need/want and it builds and downloads a minified version of them? Sort of like jQuery UI: https://jqueryui.com/download/
webcam: Specify the resolution of the webcam images/video. We should add a way to specify any custom 'constraints' (aspect ratio, resolution, mimetype (/video/mp4;codec=h264), bits per second, etc) to the Webcam plugin #876
Constructor to build Uppy with what you need, “Dashboard example meets Transloadit Wizard”. Select language, modes, providers — get code ready to use. Maybe integrate Transloadit Wizard in there as well (@arturi, @Murderlon)
Needs research
Add a prepublish test that checks if npm pack is not massive (@goto-bus-stop)