Uppy is a modular JavaScript file uploader for web browsers that handles fetching, previewing, and uploading files from multiple sources.
The tool solves the problem of building file upload functionality from scratch by providing a comprehensive, pre-built solution. It lets developers fetch files from local disk, remote URLs, Google Drive, Dropbox, Box, or capture them directly via camera. The uploader includes preview and metadata editing capabilities, with support for processing or encoding files before upload. The modular architecture means you can use only the components you need and integrate them into any application.
Uppy suits projects of any scale that need file upload functionality without the overhead of building it custom. The tool offers flexibility across different development contexts: it works with plain JavaScript and HTML, and provides first-class support for React, Svelte, Vue, and Angular. For framework users, it offers three integration approaches—pre-composed dashboard components for quick implementation, headless components for style customization, and hooks for building entirely custom interfaces. The comprehensible API is designed to let developers focus on their application logic rather than upload mechanics.
The project maintains active continuous integration for both the core uploader and its Companion service, with automated testing and deployment pipelines. Development activity shows consistent attention to release processes and infrastructure stability across multiple deployment targets.