We've moved discussions to Discord

Active Storage and direct upload for big files

I am curious to know how people are handling big file uploads with Active Storage and direct upload.

I have a page where user creates a project. To create a project, they enter name, description  and upload files (multiple files). I am setting direct_upload to true in file field. But what I realized is that when user clicks submit to create the project, user has to wait for files to be completely uploaded. We don't want the user to sit there and watch files being upload. How can I create the job and upload the files separately so that user doesn't have to wait? Is that compatible with direct_upload? 

David Lowry
From my experience of similar project (maybe! sports league video platform, users create or update 'Fixtures' with video files, usually 1-3 for full game or ice hockey periods. That makes for files that are well over 1-2GB in size on a regular basis.

All my research tells me that ActiveStorage isn't the right fit for this use-case.

Shrine.rb is perfectly positioned for this, and you'll want to create a setup that has:
- Uppy (uploader) or similar
- Uppy's Companion software which helps you integrate with:
- tusd or s3 as back-end

PLUS Shrine allows you to create multiple iterations..

There are ways to create s3 direct upload URLs without the Companion element but Uppy's interface is so pleasing to use..it's worth it.

Shrine: https://shrinerb.com/
Uppy: https://uppy.io/
Companion: https://uppy.io/docs/companion/
David Lowry  Thank you for your input. It does look like Shrine and Uppy combination might be the better choice for large file uploads with async features.
Notifications
You’re not receiving notifications from this thread.