Blocks/File Upload
BeginnerUtility

File Upload

Drag-and-drop upload to Supabase Storage

Complete file upload component: drag-and-drop dropzone, MIME type validation, 10 MB size limit, XHR upload with real progress bar, signed URL generation for private files, multi-file support, delete functionality, image preview thumbnails, and per-user storage RLS policies.

6h
Time saved
347
Lines of code
100%
TypeScript
#upload#storage#supabase#drag-and-drop

Dependencies

@supabase/supabase-js

Code preview

blocks/fileupload/index.ts
1<FileDropzone
2 userId={session.user.id}
3 accept={{ 'image/*': ['.jpg', '.png', '.webp'], 'application/pdf': ['.pdf'] }}
4 maxSizeMb={10}
5 onUpload={(file) => console.log(file.url, file.size)}
6/>

Short excerpt. Full block includes SQL migrations, error handling, RLS policies, and complete file structure.

$9

One-time Β· Instant GitHub access

βœ“Instant GitHub repo access

βœ“Own the code forever

βœ“Free updates

βœ“30-day refund if it breaks

You might also like