S3-based storage adapter for KeystoneJS (v2.0.0). Designed to replace the existing S3File field using the new storage API. Provides persistent file storage on Amazon S3 with configurable bucket, region, path, custom public URLs, and upload parameters. Supports per-file schema fields for bucket, path, etag, and URL. Release cadence is low/maintenance; this package is stable but tied to the older KeystoneJS stack (not Keystone Next). Alternatives include multer-s3 or direct S3 SDK, but this integrates directly with Keystone's file field system.
npm install keystone-storage-adapter-s3No compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Configure S3 storage adapter with environment variables, custom public URL, and schema fields; then attach to a Keystone File field.
Set S3_KEY and S3_SECRET environment variables or pass options with key and secret.
Create the S3 bucket via AWS console or SDK before using the adapter.
For Keystone Next, use the prisma-based storage or custom S3 integration.
Always start path with '/'
If using publicUrl function, ensure schema.path and schema.url are enabled to have file.path available.
Ensure adapter is properly configured with s3 options and not fallback to local file adapter.
Check IAM policy and ensure key/secret have s3:PutObject permission on the bucket.
Verify bucket name and create it if necessary.
Use the legacy KeystoneJS v4/v5 or switch to Keystone Next's native storage approach.