payload-richtext-tiptap
TypeScript icon, indicating that this package has built-in type declarations

0.0.35 • Public • Published

S3 Storage for Payload

This package provides a simple way to use S3 with Payload.

NOTE: This package removes the need to use @payloadcms/plugin-cloud-storage as was needed in Payload 2.x.

Installation

pnpm add @payloadcms/storage-s3

Usage

  • Configure the collections object to specify which collections should use the Vercel Blob adapter. The slug must match one of your existing collection slugs.
  • The config object can be any S3ClientConfig object (from @aws-sdk/client-s3). This is highly dependent on your AWS setup. Check the AWS documentation for more information.
  • When enabled, this package will automatically set disableLocalStorage to true for each collection.
import { s3Storage } from "@payloadcms/storage-s3";
import { Media } from "./collections/Media";
import { MediaWithPrefix } from "./collections/MediaWithPrefix";

export default buildConfig({
  collections: [Media, MediaWithPrefix],
  plugins: [
    s3Storage({
      collections: {
        [mediaSlug]: true,
        [mediaWithPrefixSlug]: {
          prefix,
        },
      },
      bucket: process.env.S3_BUCKET,
      config: {
        credentials: {
          accessKeyId: process.env.S3_ACCESS_KEY_ID,
          secretAccessKey: process.env.S3_SECRET_ACCESS_KEY,
        },
        region: process.env.S3_REGION,
        // ... Other S3 configuration
      },
    }),
  ],
});

Configuration Options

See the the AWS SDK Package and S3ClientConfig object for guidance on AWS S3 configuration.

Package Sidebar

Install

npm i payload-richtext-tiptap

Weekly Downloads

1,253

Version

0.0.35

License

MIT

Unpacked Size

1.37 MB

Total Files

741

Last publish

Collaborators

  • hasjpt