# Companion

Open source Node.js server that handles OAuth and streams files from remote sources such as Google Drive and Dropbox into uploads made with Uppy.


Source: https://findsoftware.frbit.cloud/uppy-companion/
Last reviewed: 2026-11-03
Listed since: 2026-11-03

## Record

### Links

- home: https://uppy.io/docs/companion/
- repository: https://github.com/transloadit/uppy
- docs: https://uppy.io/docs/companion/
- forum: https://community.transloadit.com/

### Identity

- status: active
- maintainer: Transloadit-II GmbH
- maintainerType: company
- parent: unknown
- firstRelease: 2016
- hqCountry: DE

### Kind

- category: media, auth
- hosting: node
- language: javascript
- runtime: node
- runtimeMin: node 22
- basedOn: unknown

### Content

- contentStore: not applicable
- databases: not applicable
- adminUi: not applicable
- headlessApi: not applicable
- templating: not applicable
- i18n: not applicable

### Rendering and deploy

- runsAs: always-on
- renderingModes: not applicable
- installMethod: npm

### License

- licenseModel: open-source
- license: MIT

### Releases

- currentMajor: 7
- latestReleaseDate: 2026-10-16

### Adoption

- githubStargazers: unknown
- packagistDownloads: not applicable
- npmWeeklyDownloads: 84049
- contributors: unknown
- pluginCount: unknown
- packagistMonthlyDownloads: unknown
- ecosystemsMonthlyDownloads: unknown
- httpArchiveSites: unknown
- wordpressActiveInstalls: unknown
- dependentRepos: unknown
- dependentPackages: unknown

### Sources

- urls: https://uppy.io/docs/companion/ (read 2026-11-03)
- urls: https://github.com/transloadit/uppy (read 2026-11-03)
- urls: https://uppy.io/docs/companion/ (read 2026-11-03)
- maintainer: https://transloadit.com/imprint/ (read 2026-11-03)
- hqCountry: https://transloadit.com/imprint/ (read 2026-11-03)
- category: https://github.com/transloadit/uppy/blob/main/packages/%40uppy/companion/README.md (read 2026-11-03)
- category: https://uppy.io/docs/companion/ (read 2026-11-03)
- language: https://api.github.com/repos/transloadit/uppy (read 2026-11-03)
- runtime: https://uppy.io/docs/companion/ (read 2026-11-03)
- runtimeMin: https://uppy.io/docs/companion/ (read 2026-11-03)
- installMethod: https://uppy.io/docs/companion/ (read 2026-11-03)
- installMethod: https://github.com/transloadit/uppy/blob/main/packages/%40uppy/companion/README.md (read 2026-11-03)
- installMethod: https://uppy.io/docs/companion/ (read 2026-11-03)
- installMethod: https://uppy.io/docs/companion/ (read 2026-11-03)
- installMethod: https://github.com/transloadit/uppy/blob/main/packages/%40uppy/companion/KUBERNETES.md (read 2026-11-03)
- runsAs: https://uppy.io/docs/companion/ (read 2026-11-03)
- license: https://api.github.com/repos/transloadit/uppy (read 2026-11-03)
- licenseModel: https://uppy.io/docs/companion/ (read 2026-11-03)
- currentMajor: https://registry.npmjs.org/@uppy/companion/latest (read 2026-11-03)
- latestReleaseDate: https://registry.npmjs.org/@uppy/companion/latest (read 2026-11-03)
- firstRelease: https://api.github.com/repos/transloadit/uppy/commits/v0.0.2 (read 2026-11-03)
- npmWeeklyDownloads: https://api.npmjs.org/downloads/range/2026-10-26:2026-11-01/@uppy/companion (read 2026-11-03)

## Notes

Companion is the server half of the Uppy file uploader. It is a Node.js server that holds the OAuth connections to remote file sources such as Google Drive and Dropbox, and it streams the files it fetches to an upload destination. The Uppy client sends its remote-file requests to Companion, and Companion does not keep the files. It runs as a standalone server or as middleware mounted in an existing Express application, and the [documentation](https://uppy.io/docs/companion/) covers both modes. The package is published on npm as `@uppy/companion` and is built from the Uppy monorepo, which Transloadit maintains.

## Worth knowing

Companion runs as its own long-running Node.js process, so the host has to keep it running. Several instances can share a Redis server, and the docs describe that setup.

Transloadit also runs a hosted Companion, which requires a Transloadit plan. On the hosted service, the Google Drive provider does not work with the shared OAuth app, so it needs the operator's own Google OAuth app. Windows is not a supported platform.

---

Data licensed CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Attributes are recorded, never scored; absent means unknown.
Credit, in full: FindSoftware, CC BY 4.0
