0.0.3 • Published 5 months ago

medusa-uploadthing-file-plugin v0.0.3

Weekly downloads
-
License
MIT
Repository
-
Last release
5 months ago

This plugin allows you to use UploadThing as a file provider in your Medusa application. Under the hood, it uses UploadThing's UTApi SDK to upload files and retrieve presigned URLs.

Private ACL requires a paid UploadThing account, and the feature must be enabled in your UploadThing app settings.

Compatibility

This plugin is compatible with versions >= 2.4.0 of @medusajs/medusa.

Important note

This plugin is meant to be resolved within the @medusajs/medusa/file module in the modules array of your medusa-config.ts file. It is not meant to be resolved in the plugins array. As of version 2.4.0, Medusa does not support configuring providers within plugins.

Installation

To install the plugin, run the following command in your Medusa project directory:

npm install medusa-uploadthing-file-plugin

Or if you're using Yarn:

yarn add medusa-uploadthing-file-plugin

Configuration

To configure the plugin, first add your UploadThing API key to your .env file:

UPLOADTHING_TOKEN=your-uploadthing-api-key

Then add the following to your medusa-config.ts file:

import { defineConfig } from "@medusajs/medusa/config";

export default defineConfig({
  modules: [
    {
      resolve: "@medusajs/medusa/file",
      options: {
        providers: [
          {
            resolve: "medusa-uploadthing-file-plugin",
            options: {
              token: process.env.UPLOADTHING_TOKEN,
            },
          },
        ],
      },
    },
  ],
});

There are a few additional options you can configure in the provider's options:

...
  options: {
    token: string
    filePrefix?: string;
    logLevel?: "Error" | "Warning" | "Info" | "Debug" | "Trace";
    apiUrl?: string;
    ingestUrl?: string;
  }

logLevel sets UploadThing's log level. It defaults to "Info".

apiUrl and ingestUrl are optional and can be used to override the default UploadThing API and ingest URLs. This can be useful for self-hosting or testing purposes.

filePrefix is an optional string that can be used to add a prefix to the uploaded file's name.

And that's it! You're ready to start using the UploadThing file provider in your Medusa application.

0.0.3

5 months ago

0.0.2

5 months ago

0.0.1

5 months ago