Live data from Hacker News

Uppy 1.0: Your best friend in file uploading

uppy.io

41–50 of 82 posts

Re: Uppy 1.0: Your best friend in file uploading

#41
post #34

Earlier quoted context omitted.

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…

Replied to the GP directly about how we find this, you pretty much nailed it! As for astroturfing: I am certainly guilty of self-promotion. When this post didn’t get traction, after a few days I thought maybe Show HN finds this interesting. In addition, my team of ~5 will have upvoted this post (although that probably works counter productive with HN's algorithms, I couldn’t/wouldn't stop them). Other than that we do…

Thanks for responding, and for creating this tool in the first place. Great work!

Re: Uppy 1.0: Your best friend in file uploading

#42
post #8

Earlier quoted context omitted.

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…

Back end dev here, and long-time HN lurker. I've never heard of Uppy but I've just bookmarked it and I've very glad to now know of it.

For the few times that I need to build some frontend, usually in HTML and Javascript, I need tools that do one thing well. Uppy looks like that type of tool. It is not some huge library like jQuery that I need to study for a week to use properly.

It is for finding _actionable_ content like this that I come to HN. Thank you OP for posting.

Re: Uppy 1.0: Your best friend in file uploading

#44

Well done! This is something that can be fraught with edge-case issues. However, it looks like you pulled it off in a slick package. Good job!

Thank you! Absolutely, just check our issue tracker, still filled with edge cases that need fixing : )

(and yes, we'll get to all of them :)

Re: Uppy 1.0: Your best friend in file uploading

#46

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?

One of the listed features is direct uploads to S3. I haven’t looked, but I’d wager it’s either supported or easy to add uploading to other S3-compatible services!

People have been using Uppy's S3 integration to upload directly to google cloud, and reported it works, yes!

Re: Uppy 1.0: Your best friend in file uploading

#47

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.

There's two ways to directly upload to S3 buckets (or GCS):

1) You allow append-only access for the world, maybe in combination with an expiry policy. Indeed only useful for a few use cases I'd say

2) You deploy signing of requests, and you only sign for those who are logged in, or otherwise match criteria important to your app. A bit more hassle, and still requires server-side code (whether traditionally hosted or 'serverless'), but at least your servers aren't receiving the actual uploads, taking away a potential SPOF and bottle-neck.

That said, I'm not sure how serious you are about handling file uploads, but uploading directly to buckets often means uploading to a single region (on aws, a bucket may be hosted in us-east-1 for instance, meaning high latency for folks in e.g. Australia). This may or may not be problematic for your use case, but it did bring us complaints when we had that.

Re: Uppy 1.0: Your best friend in file uploading

#48
post #7

Does this have an API for repeatable scripted uploads?

Not entirely sure if I read your question right, but Uppy does have a scriptable API so that you could do uploads without bringing in all the UI yes. So you could write your own UI, or have some kind of automation in place.

But maybe you're talking about something else? Happy to dive in deeper

Re: Uppy 1.0: Your best friend in file uploading

#49

Will you be adding vue support?

We would like to have Vue support but we don't have sufficient experience on our team to come up with something really sweet. On the community forum there are examples and posts by the community to make it working (but yes definitely not first class citizen like our React/Native integration). If you have some specific ideas about how it should look, probably weigh in there and maybe with a few enthusiasts we could hammer this out!

Re: Uppy 1.0: Your best friend in file uploading

#50
post #12

What differentiates this with the other successful JS file upload libraries?

It depends (sorry :) what uploader you want me to compare with, there's different differences with different uploaders. I think we tick all the boxes feature wise though. And Uppy is modular so you can easily leave out what you don't like (e.g. just use Core and roll your own UI, or just use Webcam support, or not at all). If you build with e.g. Webpack, that makes Uppy a lot smaller too.

One big differentiator with other open source uploaders is that we go above and beyond to get higher degrees of reliability, to the point of ridiculousness, maybe:

- We use https://tus.io under the hood for resumability to make file uploads survive bad network conditions (train enters a tunnel, you walk to the basement, share something from a club, switch cell towers, walk in range of wifi, have spotty wifi, are in rural areas). Tus is an open standard with many implementations.

- Our 'Golden Retriever' plugin can recover files after a browser crash or accidental navigate-away (full post + video from our hacking trip where we built this: https://uppy.io/blog/2017/07/golden-retriever/)

The reason we obsess over this is that Transloadit (our company) was getting complaints about files not making it to our encoding platform, even though the platform was stable. We realized one out of maybe every thousand uploads just fails due to bad network conditions. Something you don't notice when you either have a very stable connection or don't upload so many files. But it's wild out there, and if you handle 150.000 uploads a day, you can see how many complaints you might end up receiving. So we got a bit frustrated with the state of uploading (downloading had been resumable since HTTP/1.1) and that's how we ended up creating https://tus.io (, and then Uppy)

Post reply on HN