{
  "slug": "uppy",
  "name": "Uppy",
  "url": "https://uppy.io",
  "cat": "media",
  "group": "back",
  "tagline": "Open-source JS file uploader",
  "price": "Free and MIT licensed, no paid edition — all plugins ship in the base package. Self-host the optional Companion server, or use the one Transloadit hosts",
  "tier": "free",
  "pick": false,
  "what": "Modular JavaScript upload UI: drag and drop, progress, retries, resumable <code>tus</code> uploads, crash recovery, image cropping before upload and 40 locales. The optional Companion server pulls files straight from Google Drive, Dropbox, Instagram or a URL without routing through the user's device.",
  "why": "The best upload front end you can get without building one. Resumable uploads and remote-source imports work against any backend — S3, tus, XHR or Transloadit — and nothing about it locks you to a vendor.",
  "warn": "Uppy only handles the client side; storage, transformation and delivery are still yours to build. Remote sources require running and securing the Companion server plus your own OAuth credentials.",
  "install": "npm i @uppy/core @uppy/dashboard @uppy/tus",
  "category": {
    "key": "media",
    "name": "Images, video & files",
    "desc": "Upload, transform, store, deliver. Transformation billing is the hidden cost.",
    "group": "back",
    "groupName": "Give it a backend"
  },
  "freshness": null,
  "health": {
    "ok": true,
    "status_code": 200,
    "final_url": "https://uppy.io/",
    "checked_at": "2026-08-18T17:12:38.21+00:00"
  },
  "corrected_at": null,
  "upstream_changed_at": null
}