Skip to content

Files

The Files page is where you manage all uploaded media in your store — product images, logos, banners, and any other files. From here you can browse, search, upload, and delete files.

Open Files in the admin sidebar to get started.

Browsing your files

The file list displays every uploaded file in a table with a thumbnail preview, filename, type, size, and upload date.

Files list

ColumnDescription
PreviewThumbnail of the file (images show the actual image)
FilenameThe stored file name (click the copy icon to copy the file's link)
LinkCopy the file URL or open it in a new tab
TypeFile category — Image, Video, Audio, PDF, or Document
SizeFile size in human-readable format (KB, MB)
Uploaded AtDate the file was uploaded

You can sort by clicking the Filename, Size, or Uploaded At column headers, and search by typing in the search bar at the top. Use the Filter button to narrow results by file type.

Uploading files

Click the Upload Files button in the top-right corner to open the upload dialog. You can drag and drop files or click to browse your computer. Multiple files can be uploaded at once.

Supported formats include images (PNG, JPEG, SVG, WebP), videos, audio, PDFs, and other common document types.

Important: Images are limited to 5 MB per file. Uploaded images are automatically pre-processed — optimized and resized — to reduce their file size, ensuring your pages load faster and boosting your SEO rankings.

Bulk actions

Select one or more files using the checkboxes on the left, then use the bulk actions bar that appears at the bottom:

  • Delete — permanently remove selected files (a confirmation dialog will appear)

Per-file actions

Click the ... menu on any row to access individual file actions:

  • Delete — permanently remove this file

Important: Deleting a file is permanent and cannot be undone. If the file is used by a product, collection, or page section, those references will break.

Storage modes

Capyshop supports two storage backends for uploaded assets, selected at deploy time via the ASSETS_STORAGE_MODE environment variable.

  • Local (default) — files are written to data/files/ inside the application container and served directly by the app. Image variants are generated on the fly and cached in data/files/.cache/.
  • S3 — files are uploaded to an S3-compatible bucket (AWS S3, Cloudflare R2, Backblaze B2, MinIO, etc.) and served from a CDN. When you upload a new image, optimized WebP variants at common widths (200/400/600/800/1200) are pre-generated and stored alongside the original, so the storefront serves correctly-sized images without any runtime conversion.

An optional ASSETS_MAX_BYTES setting caps the cumulative storage footprint across both modes — useful for keeping bucket bills predictable on shared hosting. Per-upload caps (5 MB image / 50 MB video) are independent of this setting.

See Docker Deployment for the full list of S3 environment variables and the one-shot script for migrating an existing local-mode store to S3.