Skip to content

Uploaders

File uploads are handled by Shrine, with Uppy on the front-end:

  • ImageUploader — base image uploader
  • RecordImageUploader — attach an image to any record: include RecordImageUploader::Attachment(:image)
  • ModelImageUploader — model-level image uploader (used by content editor images)

Storage

Configured per environment in the generated Shrine initializer (config/initializers/shrine.rb):

EnvironmentStorage
productionS3 (via the S3_* ENV variables)
developmentlocal filesystem (public/uploads/)
testin-memory

Image processing uses libvips, blurhash placeholders are generated for progressive loading, and direct uploads go through the Shrine upload_endpoint (20 MB max).

Released under the MIT License.