UploadThing
Built specifically for Next.js/TypeScript apps that just need file upload UI and storage wired together fast, without hand-rolling presigned URLs.
What is UploadThing?
UploadThing is a file upload service built specifically for the Next.js/TypeScript stack, handling both the storage backend and the client-side upload UI so you don't have to hand-roll presigned URLs, progress bars, and type validation yourself. It's less a general-purpose storage product and more an opinionated, fast path to "users can upload files" for apps that already fit its target stack.
Key features
- Type-safe file router defined in your own code, with per-route rules for file type, size limits, and count
- Drop-in React components and hooks for upload UI, including progress state, without building it from scratch
- Handles presigned URL generation and direct-to-storage uploads under the hood
- Built-in support for common Next.js patterns (App Router, server actions) rather than a generic SDK bolted on after the fact
- Webhooks for post-upload processing, like triggering a job once a file finishes uploading
Who it's for
Next.js/TypeScript apps that need file upload working fast without owning the storage infrastructure decisions. If you're not in that stack, or need fine-grained control over bucket configuration and provider choice, a more general storage option fits better.
Pricing
Free tier for smaller projects, usage-based paid plans tied to storage and bandwidth as usage grows.