To keep Uppy lightweight, we’re aiming to carefully select what packages we include. The graph below will help us discover low hanging fruit. Sizes and dependencies shown here are for the bundled version of Uppy, which includes all plugins we offer. In production, when you pick and choose just the ones you need, the size will be much smaller:

  • Drag & Drop + Multipart uploads ≈ 18 Kb mingz
  • Full-featured Dashboard with image previews and progress indicators + tus resumable uploads ≈ 36 Kb mingz

This graph is built with Hugh Kennedy’s excellent disc.

Bundle Sizes

Below are the minified and gzipped sizes for each Uppy package. Note that this includes the dependencies for each package, some of which are shared when you install multiple plugins—for example, the @uppy/dropbox and @uppy/instagram package are both over 11kB including dependencies, but only sum up to about 15kB when they are used together.

Package Minified Gzip
uppy 402 kB 103 kB
@uppy/core 38.1 kB 11.8 kB
@uppy/dashboard 94 kB 27.2 kB
@uppy/drag-drop 18.1 kB 6.68 kB
@uppy/file-input 12 kB 4.84 kB
@uppy/webcam 20.4 kB 7.23 kB
@uppy/dropbox 41.1 kB 12.7 kB
@uppy/google-drive 42.1 kB 12.8 kB
@uppy/instagram 42.8 kB 13.3 kB
@uppy/url 23.5 kB 8.04 kB
@uppy/tus 43.1 kB 12.4 kB
@uppy/xhr-upload 19.9 kB 6.16 kB
@uppy/aws-s3 25.2 kB 7.59 kB
@uppy/aws-s3-multipart 22.7 kB 6.46 kB
@uppy/status-bar 24 kB 8.65 kB
@uppy/progress-bar 9.84 kB 4.11 kB
@uppy/informer 9.82 kB 4.15 kB
@uppy/transloadit 169 kB 44.4 kB
@uppy/form 5.36 kB 2.06 kB
@uppy/golden-retriever 12.1 kB 3.48 kB
@uppy/react 109 kB 29.2 kB
@uppy/thumbnail-generator 4.96 kB 1.88 kB
@uppy/store-default 795 B 398 B
@uppy/store-redux 2.26 kB 1 kB

Browser support

This reflects the current state of Uppy and is updated with every change.

Sauce Test Status