I developed a desktop application and I am in the process of adding support for online cloud storage. The main requirement is to allow the user to store files in the cloud while being able to delete them locally to save space (this is not possible via Dropbox nor Google Drive).
My initial idea is to setup a server with Nginx that accepts incoming connections and forwards them to a webservice by acting as a forward proxy.
If the incoming request is a download/upload the query is redirected to the S3/GCS server. I want to avoid a direct connection to the S3/GCS container. Is this a suitable architecture?
TLDR: How should an architecture look like where a desktop application can send files to a custom cloud server.
Dropbox and Google Drive are not suitable for my workflow as they don’t allow to delete a file locally but keeping them in the cloud. Files and directories are always synced.