Recommended even if you are not using Shrine: Uppy provides built-in UI components, easy direct uploads to S3, multiple plug-ins (custom endpoint, S3, S3 multipart, tus) and many more features that other JavaScript uploaders lacked.