What is Uppy?

Uppy is an open-source file uploader created and maintained by Transloadit. Its modular browser interface supports local files, cameras, remote sources, resumable transfers, and Transloadit Assemblies.

Request + files
Results + status
A processing platform accepts an authenticated request, executes a workflow, and returns observable results. This diagram shows platform workflows broadly, not specifically Uppy.

How Uppy works

Uppy organizes browser uploads around a central state manager and a set of source, interface, preprocessing, and transport plugins. An application can present a composed Dashboard or build a custom interface over the same file and progress state. Transport plugins connect that state to resumable endpoints or managed processing services, while remote providers use a server-side companion. It occupies the client-side ingest layer before backend validation and media processing.

Key facts

  1. Uppy Core coordinates file IDs, restrictions, metadata, progress, and plugin events; removing a visible Dashboard does not remove the upload state or transport behavior held by Core.
  2. Remote-source plugins rely on Companion to communicate with provider APIs without exposing provider credentials in the browser, unlike files selected directly from the user’s device.
  3. The tus and Transloadit integrations solve different boundaries: one sends resumable bytes to a tus endpoint, while the other creates and monitors media-processing Assemblies.

When Uppy matters

Choose Uppy when an application needs extensible source selection and managed upload state in the browser. Plugin and backend compatibility must be checked because not every source or resumable flow uses the same integration.

Common use cases for platform workflows

These examples cover platform workflows broadly, not specifically Uppy.

  • Running repeatable upload, import, processing, AI, storage, and notification pipelines.
  • Tracking long-running media work independently from an application request.
  • Referencing centrally stored credentials by name instead of sending storage secrets with each request.

Working with platform workflows

This guidance covers platform workflows broadly, not just Uppy.

A client authenticates and submits files or references together with workflow instructions. The platform validates the request, schedules dependent operations, records state transitions, and exposes results through a response, polling endpoint, or notification.

Platform concepts become reliable only when their lifecycle is explicit. Authentication, idempotency, retries, timeouts, observability, quotas, and terminal states should be designed together rather than added after failures occur.

What you gain

  • Reusable workflows separate application intent from processing infrastructure.
  • Stable job identifiers and lifecycle events improve observability and recovery.
  • Managed queues and workers let products scale without embedding every media tool.

What it costs

  • Synchronous responses are simple but keep connections open while long work executes.
  • Aggressive retries improve recovery from transient faults but can duplicate work or overload a dependency.
  • Higher concurrency reduces queue time until resource contention or a downstream limit becomes the bottleneck.

Before production

  1. Define authentication, authorization, idempotency, retries, and terminal error behavior.
  2. Observe queue time, execution time, callbacks, and partial results with stable identifiers.
  3. Exercise malformed, duplicate, interrupted, and unauthorized requests before launch.

Turn media knowledge into a working pipeline

Connect uploads, processing, AI, storage, and delivery through one declarative API — with the encoding stack, scaling, and format churn handled for you.

Try Transloadit for free