/chu

Minimal file uploader using python, flask and uwsgi.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

chu

A file uploader built with Python, Flask, and uWSGI, based on https://flask.palletsprojects.com/en/2.0.x/patterns/fileuploads/

chu

Features

  • Metadata Purging: Removes metadata from uploaded files (except color profile and orientation).
  • Space Optimization: Losslessly compresses PNG and other file formats using optipng.
  • JPEG Compression: Integrates Dropbox's Lepton for lossless JPEG compression, saving approximately 22% of space.
  • Filename Handling: Generates random URL/filenames using temporary files, or secures user-requested filenames if provided.
  • Upload Size Limit: Enforces a predefined maximum size limit for each uploaded file.
  • Extension Control: Restricts uploads to only allow specific file extensions.
  • Authentication: Requires a password to be included in the cURL request for uploading files.
  • URL Response: Returns the URL pointing to the successfully uploaded file.

Dependencies

License

This code is licensed under the GNU General Public License version 3.