Skip to content
Better Upload

Better Upload

React file uploads straight to any S3-compatible bucket, with shadcn UI parts

Tier A · StrongRegistryComponent LibraryToolbetter-upload.com

Preview image from better-upload.com

Better Upload is a React file-upload library split into a server package that signs upload routes and a client package that drives the browser side, so bytes go directly from the user to your own S3-compatible bucket instead of through your server. It ships a small shadcn-style registry of four UI pieces (Upload Button, Upload Dropzone, Upload Progress, Paste Upload Area) that you install into your own codebase and edit. It is framework-agnostic across Next.js, Remix and TanStack Start, and works with AWS S3, Cloudflare R2, Backblaze and Tigris. For teams that want UploadThing ergonomics without handing over their storage or their bill.

Install
npx shadcn@latest add @better-upload/upload-dropzone

For an agent

Reach for this instead of UploadThing or a hand-rolled presigned-URL flow when the project already has an S3-compatible bucket and you must not add a metered third-party upload vendor. Install `@better-upload/server` for the route handler and `@better-upload/client` for hooks, then pull the UI in with the shadcn CLI namespace `@better-upload/...` — the components assume shadcn's `button` and `progress` already exist, so run `shadcn init` first or the add will fail on missing registry dependencies. Do not expect it to do image transforms, virus scanning or a media library; it stops at the upload.

Why it is here. It is the rare upload library that keeps your storage, your credentials and your bill while still giving you a dropzone you can paste in and restyle. The server/client split makes it usable in any React meta-framework rather than being locked to Next.js.

Install command, framework, licence and component list.

Facts

License
MIT
Pricing
Free, Open source
Framework
React, Next.js, Remix
Styling
Tailwind CSS, CSS custom properties
Distribution
npm package, shadcn registry, GitHub repository, Copy-paste snippet
Platform
Web
Content type
Code
Agent readiness
Machine-readable registry item, CLI installable, Structured documentation, Readable open source, Copy-paste ready code
Accessibility
Built on accessible primitives
Maturity
Actively maintained
GitHub stars
1,286
Package
@better-upload/client

Components it ships

4 total

Helps you build

3

Notable for

  • direct-to-S3, no proxying
  • shadcn CLI namespace install
  • R2 / Backblaze / Tigris adapters
  • paste-to-upload area
  • MIT, 1.3k stars

Provenance

Verified 2026-08-15. HTTP 200. https://better-upload.com, https://better-upload.com/docs, https://better-upload.com/docs/quickstart, https://better-upload.com/r/registry.json, https://better-upload.com/docs/components/upload-dropzone, https://github.com/Nic13Gamer/better-upload, GitHub API repos/Nic13Gamer/better-upload

Also in Component Libraries

6
better-upload.comTier A