# strapi-provider-upload-matrix

> Vercel platform plugin

Latest version **0.0.2** (published 2021-01-03) · MIT license · 0 weekly downloads

## Install

```sh
npm install strapi-provider-upload-matrix
pnpm add strapi-provider-upload-matrix
yarn add strapi-provider-upload-matrix
bun add strapi-provider-upload-matrix
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.2 |
| Published | 2021-01-03 |
| First published | 2020-11-16 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 7.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2 |
| Author | f3l1x |
| Maintainers | f3l1x |
| Keywords | strapi, vercel, strapi-plugin, plugin, deployment |

## Links

- npm: https://www.npmjs.com/package/strapi-provider-upload-matrix
- Repository: https://github.com/webkitty/strapi-provider-upload-matrix
- Homepage: https://github.com/webkitty/strapi-provider-upload-matrix#readme
- Issues: https://github.com/webkitty/strapi-provider-upload-matrix/issues
- npm.io page: https://npm.io/package/strapi-provider-upload-matrix

## Alternatives

- [jsforce](https://npm.io/package/jsforce.md) — 851.2K weekly downloads
- [react-native-qrcode-svg](https://npm.io/package/react-native-qrcode-svg.md) — 693.5K weekly downloads
- [@salesforce/plugin-data](https://npm.io/package/@salesforce/plugin-data.md) — 394.9K weekly downloads
- [@backstage/plugin-search-common](https://npm.io/package/@backstage/plugin-search-common.md) — 308.5K weekly downloads
- [@chain-registry/types](https://npm.io/package/@chain-registry/types.md) — 38.4K weekly downloads

## Recent versions

- 0.0.2 (latest) — 2021-01-03
- 0.0.1 — 2020-11-16

## README

<h1 align=center>Strapi Matrix Provider</h1>

<p align=center>
   Combine multiple upload plugins together.
</p>

<p align=center>
🕹 <a href="https://f3l1x.io">f3l1x.io</a> | 💻 <a href="https://github.com/f3l1x">f3l1x</a> | 🐦 <a href="https://twitter.com/xf3l1x">@xf3l1x</a>
</p>

<p align=center>
    <a href="https://github.com/webkitty/strapi-provider-upload-matrix/actions">
        <img src="https://badgen.net/github/checks/webkitty/strapi-provider-upload-matrix">
    </a>
    <a href="https://www.npmjs.com/package/strapi-provider-upload-matrix">
        <img src="https://badgen.net/npm/v/strapi-provider-upload-matrix">
    </a>
    <a href="https://www.npmjs.com/package/strapi-provider-upload-matrix">
        <img src="https://badgen.net/npm/dt/strapi-provider-upload-matrix">
    </a>
    <a href="/LICENSE">
        <img src="https://badgen.net/github/license/webkitty/strapi-provider-upload-matrix">
    </a>
</p>

![](/docs/screenshot.png)

-----

## Usage

To install latest version use [NPM](https://npmjs.com).

```
npm install --save strapi-provider-upload-matrix
```

## Overview

Strapi has great support for plugins and upload providers, but you can register only one upload provider.
Let's say you want to deploy images to image service and other files to file service. This provider will help you.

## Documentation

1. Install provider.
2. Install [other upload providers](https://www.npmjs.com/search?q=strapi-provider-upload-&ranking=popularity).
3. Edit configuration.

    We are going to setup 2 providers ([ImageKit](https://www.npmjs.com/package/strapi-provider-upload-imagekit) and [S3](https://www.npmjs.com/package/strapi-provider-upload-aws-s3)).

    - Images will use `imagekit` according to extensions (`png, jpg, jpeg, svg, webp, gif, tif, mp4, webm, mov, swf, pdf`)
    - Other files will use `aws-s3` according to fallback

    #### `{strapi}/config/plugins.js`

    ```js
    module.exports = ({ env }) => ({
        upload: {
            provider: 'matrix',
            providerOptions: {
            resolvers: [
                // ImageKit
                // Images, videos
                {
                    id: 'images',
                    test: {
                        ext: ['png', 'jpg', 'jpeg', 'svg', 'webp', 'gif', 'tif', 'mp4', 'webm', 'mov', 'swf', 'pdf'],
                    },
                    use: {
                        provider: "imagekit",
                        providerOptions: {
                        publicKey: env("IMAGEKIT_PUBLIC_KEY"),
                        privateKey: env("IMAGEKIT_PRIVATE_KEY"),
                        urlEndpoint: env("IMAGEKIT_URL"),
                            params: {
                                folder: env("IMAGEKIT_FOLDER"),
                            }
                        }
                    }
                },
                // AWS S3
                // Fallback
                {
                    id: 'misc',
                    test: '*',
                    use: {
                        provider: 'aws-s3',
                        providerOptions: {
                        accessKeyId: env('AWS_ACCESS_KEY_ID'),
                        secretAccessKey: env('AWS_ACCESS_SECRET'),
                        region: env('AWS_REGION'),
                            params: {
                                Bucket: env('AWS_BUCKET'),
                            },
                        }
                    },
                },
            ]
            },
        }
    });
    ```

4. Profit 🚀

## Development

<a href="https://github.com/f3l1x">
    <img width="80" height="80" src="https://avatars2.githubusercontent.com/u/538058?v=3&s=80">
</a>

-----

Consider to [support](https://github.com/sponsors/f3l1x) **f3l1x**. Also thank you for using this package.

---
_Source: https://npm.io/package/strapi-provider-upload-matrix · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
