NoteBugsDocs

Features

File storage

Local disk or an S3-like bucket, and the decision is per content type.

Attachments, comment images, avatars and the backup .zip all go through the same door. Behind it there are two backends: the container's volume and an S3-like bucket (AWS, MinIO, Magalu Cloud, anything that speaks the protocol).

The destination is per CONTENT TYPE

`scope`Goes to the bucket
ALLattachments and backups
IMAGESattachments only
BACKUPSthe backup .zip only

That is why “S3 on” does not mean “everything in the bucket”: the API response carries driver (what was chosen) alongside effectiveDriver and effectiveBackupDriver (where things actually land). When they diverge, it is because the scope sends only part of the content to the bucket.

What sits above the driver

  • Type detection from the magic bytes.
  • The name barrier that prevents path traversal.
  • The refusal by upload mode (NONE, IMAGE, ALL).

All three hold whatever the backend is: switching driver loosens none of them.

The secret key goes in and never comes out

The API response carries only hasSecret: a secret exists, without saying which. A bucket credential does not go into the backup either.

Test before saving

The connection test writes, reads and deletes a test file using the configuration in the form, not the one already saved: you can check the credential before storing it.