Skip to content

requirements of an image upload feature #95

@cblgh

Description

@cblgh

while we keep the philosophy, rationale and reasoning contained in #94, i wanted to put down some thoughts that i've had in the meantime since being sniped by @decentral1se.

the following contains a rough list of possible requirements for a speculative (!) image uploading functionality. if implemented, some of these may not be needed. regardless, it is easy for me in the current moment to share the context i've got built up in the event that it does become relevant. here we go!

  • resize file to predetermined max size
  • clearly communicate limits and that images will be resized
  • communicate and show to users the amount of file storage taken up by them
  • trim exif data
    • keep image rotational/orientation data intact
  • handle
    • (android) jpeg uploads
    • (android, possibly) webp uploads
    • (ios) HEIF uploads
    • png uploads
    • svg uploads
  • monitor
    • current total capacity taken up by uploads, and display it
    • all recently uploaded photos as a moderation precaution, and easily display it
  • limit
    • file uploads to xxxx <unit>bytes
    • amount of uploads per user to yyy files / bytes
    • total amount of database space for media to zzz bytes
  • consider
    • possibility of abuse uploaded in an image and how to systemically discourage, act on, and remove it.
      • impact on general posting and ad-hoc admin censoring as a result of this new piecemeal capability
    • javascript-free flow for uploading images, getting a referenced back, then using it somewhere in the post contents
      • the impact of people using cerca as a free image host by uploading images and then not referencing them in a post
    • config toggle to enable / disable media uploads
    • ability to restrict uploads to public only posts to limit spread of abuse material
    • separating the image database from the core cerca database
    • referencing the image database from a separate machine than is hosting the core cerca database
    • using simple files in a folder as the image database

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions