Combine multiple upload plugins together.
๐น f3l1x.io | ๐ป f3l1x | ๐ฆ @xf3l1x
To install latest version use NPM.
npm install --save strapi-provider-upload-matrix
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.
-
Install provider.
-
Install other upload providers.
-
Edit configuration.
We are going to setup 2 providers (ImageKit and 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
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'), }, } }, }, ] }, } });
- Images will use
-
Profit ๐
Consider to support f3l1x. Also thank you for using this package.