Gathering detailed insights and metrics for react-uploader
Gathering detailed insights and metrics for react-uploader
Gathering detailed insights and metrics for react-uploader
Gathering detailed insights and metrics for react-uploader
@mux/mux-uploader-react
An uploader element for React that handles Mux Direct Uploads and a visual progress bar for you
react-dropzone-uploader
React file dropzone and uploader: fully customizable, progress indicators, upload cancellation and restart, zero deps and excellent TypeScript support
uxcore-uploader
uxcore-uploader component for react
react-avatar-uploader
A React Component for uploading avatar to the server
Beautiful File Upload Component | Developed for React by Bytescale
npm install react-uploader
Typescript
Module System
Node Version
NPM Version
TypeScript (70.57%)
JavaScript (26.54%)
HTML (2.55%)
Shell (0.34%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
MIT License
74 Stars
285 Commits
2 Forks
1 Watchers
3 Branches
2 Contributors
Updated on Jun 30, 2025
Latest Version
3.43.0
Package Id
react-uploader@3.43.0
Unpacked Size
30.29 kB
Size
8.96 kB
File Count
13
NPM Version
8.19.3
Node Version
16.19.0
Published on
Sep 19, 2023
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
2
1
39
React File Upload Widget
(With Integrated Cloud Storage)
100% Serverless File Upload Widget
Powered by Bytescale
DMCA Compliant • GDPR Compliant • 99.9% Uptime SLA
Supports: Rate Limiting, Volume Limiting, File Size & Type Limiting, JWT Auth, and more...
Install via NPM:
1npm install react-uploader
Or via YARN:
1yarn add react-uploader
Or via a <script>
tag:
1<script src="https://js.bytescale.com/react-uploader/v3"></script>
The UploadButton
component uses a render prop to provide an onClick
callback to your button element.
When clicked, a file upload modal will appear:
1import { Uploader } from "uploader"; // Installed by "react-uploader". 2import { UploadButton } from "react-uploader"; 3 4// Initialize once (at the start of your app). 5const uploader = Uploader({ 6 apiKey: "free" // Get production API keys from Bytescale 7}); 8 9// Configuration options: https://www.bytescale.com/docs/upload-widget/frameworks/react#customize 10const options = { multi: true }; 11 12const MyApp = () => ( 13 <UploadButton uploader={uploader} 14 options={options} 15 onComplete={files => alert(files.map(x => x.fileUrl).join("\n"))}> 16 {({onClick}) => 17 <button onClick={onClick}> 18 Upload a file... 19 </button> 20 } 21 </UploadButton> 22);
Required props:
uploader
children
Optional props:
options
onComplete
The UploadDropzone
component renders an inline drag-and-drop file upload dropzone:
1import { Uploader } from "uploader"; // Installed by "react-uploader". 2import { UploadDropzone } from "react-uploader"; 3 4// Initialize once (at the start of your app). 5const uploader = Uploader({ 6 apiKey: "free" // Get production API keys from Bytescale 7}); 8 9// Configuration options: https://www.bytescale.com/docs/upload-widget/frameworks/react#customize 10const options = { multi: true }; 11 12const MyApp = () => ( 13 <UploadDropzone uploader={uploader} 14 options={options} 15 onUpdate={files => alert(files.map(x => x.fileUrl).join("\n"))} 16 width="600px" 17 height="375px" /> 18);
Required props:
uploader
Optional props:
options
onUpdate
width
height
The callbacks receive a Array<UploadWidgetResult>
:
1{ 2 fileUrl: "https://upcdn.io/FW25...", // URL to use when serving this file. 3 filePath: "/uploads/example.jpg", // File path (we recommend saving this to your database). 4 5 editedFile: undefined, // Edited file (for image crops). Same structure as below. 6 7 originalFile: { 8 fileUrl: "https://upcdn.io/FW25...", // Uploaded file URL. 9 filePath: "/uploads/example.jpg", // Uploaded file path (relative to your raw file directory). 10 accountId: "FW251aX", // Bytescale account the file was uploaded to. 11 originalFileName: "example.jpg", // Original file name from the user's machine. 12 file: { ... }, // Original DOM file object from the <input> element. 13 size: 12345, // File size in bytes. 14 lastModified: 1663410542397, // Epoch timestamp of when the file was uploaded or updated. 15 mime: "image/jpeg", // File MIME type. 16 metadata: { 17 ... // User-provided JSON object. 18 }, 19 tags: [ 20 "tag1", // User-provided & auto-generated tags. 21 "tag2", 22 ... 23 ] 24 } 25}
Bytescale provides an Upload API, which supports the following:
Uploading a "Hello World"
text file is as simple as:
1curl --data "Hello World" \ 2 -u apikey:free \ 3 -X POST "https://api.bytescale.com/v1/files/basic"
Note: Remember to set -H "Content-Type: mime/type"
when uploading other file types!
Bytescale also provides an Image Processing API, which supports the following:
Read the Image Processing API docs »
Here's an example using a photo of Chicago:
https://upcdn.io/W142hJk/raw/example/city-landscape.jpg
Using the Image Processing API, you can produce this image:
https://upcdn.io/W142hJk/image/example/city-landscape.jpg
?w=900
&h=600
&fit=crop
&f=webp
&q=80
&blur=4
&text=WATERMARK
&layer-opacity=80
&blend=overlay
&layer-rotate=315
&font-size=100
&padding=10
&font-weight=900
&color=ffffff
&repeat=true
&text=Chicago
&gravity=bottom
&padding-x=50
&padding-bottom=20
&font=/example/fonts/Lobster.ttf
&color=ffe400
Yes: Bytescale supports AWS S3, Cloudflare R2, Google Storage, and DigitalOcean Spaces.
To configure a custom storage backend, please see:
https://www.bytescale.com/docs/storage/sources
React Uploader is the React Upload Widget for Bytescale: the best way to serve images, videos, and audio for web apps.
No vulnerabilities found.
No security vulnerabilities found.