What is UploadStuff?
UploadStuff is the easiest way to add file uploads to your full stack TypeScript application. Many services have tried to build a "better S3", but in our opinion, none found the right compromise of ownership, flexibility and safety.
Doing this well involves getting three key pieces correct: File Hosting, Server-side Authorization, and Client Experience.
1. Use managed file hosting
UploadStuff is agnostic of the hosting provider, but we strongly recommend Convex (opens in a new tab).
2. Authorize users on YOUR server
You can't let just anyone upload files to a storage provider which you pay for. You should authorize uploads on the server. Convex makes this really easy.
3. Give users a great experience
UploadStuff is an open-source JavaScript and React library for uploading files from your frontend with convenient components, hooks and more. There's an <UploadButton />
and <UploadDropzone/>
for super easy implementation. With useUploadFiles
you can implement your own custom component. And uploadFiles
can be used from any JS application.
Wait, I've seen this before!
UploadStuff is a play on and a fork of UploadThing (opens in a new tab).
Disclaimer: This project is not owned or operated by Convex, but I do work there.