Live data from Hacker News

Uppy 1.0: Your best friend in file uploading

uppy.io

21–30 of 82 posts

Re: Uppy 1.0: Your best friend in file uploading

#24

Nice work, looks awesome! Curious whether you could use this to upload files directly to google cloud storage without having a server in the middle?

Whether or not this is possible, it seems like a serious DDOS risk. Some one with malicious intent could give you a huge hosting bill. It might be difficult to apply IP-based rate-limiting without a server.

Re: Uppy 1.0: Your best friend in file uploading

#27

Nice work, looks awesome! Curious whether you could use this to upload files directly to google cloud storage without having a server in the middle?

Whether or not this is possible, it seems like a serious DDOS risk. Some one with malicious intent could give you a huge hosting bill. It might be difficult to apply IP-based rate-limiting without a server.

With S3, your server supplies the client with signed time-limited upload endpoint URLs (which is a feature S3 supports). So the server is effectively authorizing the client to upload direct to S3. You could do this only for "logged in" users, or use your own IP-based rate-limiting, or whatever else you wanted to do. Front-end direct-to-cloud doesn't necessarily mean "without a server", as you can set it up so it has to be authorized by the server, and this is generally how you'd do it.

I don't know if GCS is built into uppy at present (contrary to another comment, I don't believe GCS could be called "S3-compatible"), but I suspect there's a way to use uppy hooks to add it. As long as GCS also allows storage locations that allow upload only to signed time-limited URLs, the same approach could be used.

Where you put the file on the cloud storage and what you do with it is, I believe, not uppy's concern. But if you are for instance using the ruby shrine file attachment library (which is built out with examples to support uppy, and direct-to-S3, as a use case) -- shrine strongly encourages you to use a two stage/two location flow, where (eg) any front-end-uploaded things are in a temporary 'cache' storage, which on S3 you might want to use lifecycle rules to automatically delete things from if older than X. The files might only moved to a more permanent storage on some other event.

Once you get into it, it turns out all the concerns of file handling can get pretty complicated. But having the front-end upload directly to cloud storage can be a pretty great thing, depending your back-end architecture, for preventing any of your actual app 'worker' processes/threads from being taken up handling a file upload, dealing with slow clients, etc. Can make proper sizing and scaling of your back-end a lot more straightforward and resource-limited.

Re: Uppy 1.0: Your best friend in file uploading

#29
post #10
post #4

Prev. 2 days: - https://news.ycombinator.com/item?id=19756159 (same ID as prev. post by same user) - https://news.ycombinator.com/item?id=19759039 - https://news.ycombinator.com/item?id=19765780

I check hacker news regularly and this was the first time I saw it. Reposts aren’t inherently bad. I’m glad it was reposted and I’ve now had the chance to learn about it.

I don't think they were implying that reposts are bad. I guess they were just listing out links of discussions on previous, similar submissions if we want to check them out too.

Re: Uppy 1.0: Your best friend in file uploading

#30
post #8
post #2

One of the developers here. We worked three years to make Uppy the best open source file uploader the world has seen. Looking forward to your brutally honest feedback! Happy to answer questions too.

How did you manage to fund this? Or was it just a side project your team worked on?

I am not OP, but in the blog post the author mentions he works for Transloadit, which (after googling it as I wasn't previously familiar with it) is a service which handles lots of different file processing tasks for developers (e.g. image manipulation, audio/video encoding, virus scanning, etc.)

If you are a service selling a product targeted towards developers, I can't think of better marketing than something like this, where tons of users will use it for free, but many users (like me) who hadn't previously heard about your core product will find out about it through this.

EDIT: One thing to add about the marketing angle, another commenter mentioned that this was posted multiple times before reaching the front page, and some of the generic "Awesome! Will definitely try this!" comments here by low-karma users makes me think there is some astro-turfing going on. That said, I don't really mind it. Author created a useful tool, open sourced it, and I'm now glad I know about it. Kudos to him and if it helps more people become aware of his business (which obviously funded his creation of this open source tool) more power to him.

Post reply on HN