Skip to main content


Vue components for the Uppy UI plugins.


npm install @uppy/vue

You also need to install the UI plugin you want to use. For instance, @uppy/dashboard.


The following plugins are available as Vue component wrappers:

Instead of adding a UI plugin to an Uppy instance with .use(), the Uppy instance can be passed into components as an uppy prop. Due to the way Vue handles reactivity, you can initialize Uppy the same way you would with vanilla JavaScript.

import { Dashboard } from '@uppy/vue';
import Uppy from '@uppy/core';
import Webcam from '@uppy/webcam';

// Don't forget the CSS: core and UI components + plugins you are using
import '@uppy/core/dist/style.css';
import '@uppy/dashboard/dist/style.css';
import '@uppy/webcam/dist/style.css';

const uppy = new Uppy().use(Webcam);

<Dashboard :uppy="uppy" :plugins="['Webcam']" />