[ Design Thread ] AeroCloud: provider-agnostic continuous sync with a client-side key #405
Replies: 3 comments 1 reply
-
Of these, delete propagation is the most important; otherwise it’s not a true sync.
I don’t understand this question. What are the alternatives?
Again, considering that this is nearly perfected at this point by Syncthing, this is the absolute lowest priority to-do item in my opinion for AeroFTP. I prefer the focus of AeroFTP to be mostly around cloud syncing because this is where the biggest gap in software currently is. |
Beta Was this translation helpful? Give feedback.
-
|
Thanks Ehud, this is exactly the kind of feedback that sharpens the design. Point by point.
Good call. I will add Restic and Kopia (and Duplicati/Borg as space allows) to the top-right, sitting to the left of rclone since they cover fewer backends.
You are right, so I will drop it from the chart. I had only plotted it as a reference point for "client holds the key," but since it does not sync it does not belong on a syncer comparison.
I agree with your framing, and I want to be explicit that AeroCloud does not force a daemon. It already runs both a filesystem watcher and an interval scheduler, and the interval is yours to set (once per hour is a perfectly good choice). Real-time is opt-in, not mandatory. To address the "waste upload bandwidth on every small edit" concern, I am seriously evaluating debounce and coalescing so that even watcher mode would batch a burst of edits into a single transfer instead of uploading every few seconds. So: daemon behaviour over LAN if you want it, scheduler behaviour to the cloud, same engine.
I think your model is the right default and I will make it easy to express: bidirectional over LAN, one-way (send-only) to the cloud, with the cloud copy treated as a backup. One-way folders are on the list precisely for this. A dedicated thread on the uses of cloud drives sounds worth doing and I will open one.
Yes. The AeroCrypt overlay is already wired in (fail-closed if the vault is locked), and I plan to bring the full overlay stack to AeroCloud, since your point that overlays make cloud drives backup-only is exactly the workflow I want to support well.
Received. Delete propagation first (agreed, it is the line between sync and copy), then one-way folders and multiple folders equally, then LAN and P2P last. That maps cleanly onto my build order.
My fault, let me rephrase. I was asking what the client-side key is for, in your usage. The alternatives I had in mind: (a) zero-knowledge backup to a cheap dumb store like S3 or WebDAV; (b) protecting data on mainstream clouds such as Dropbox or Google Drive from the provider itself; (c) safely syncing across devices you do not fully trust; (d) sharing an encrypted folder with someone else. Which of these is the real driver for you, or is it something else? |
Beta Was this translation helpful? Give feedback.
-
|
@EhudKirsh as promised, I opened the dedicated thread on the uses of cloud drives, framed as a poll so we get a quick read on the community first, then discuss in depth: #407. Your daemon-vs-scheduler and one-way-cloud points are the seed of it. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I have written a lot about AeroCloud in the docs and on docs.aeroftp.app, but I have never opened a design thread for it, so here it is. This is a design conversation, not a roadmap commitment. I want to lay out honestly what AeroCloud is today, where I think it actually sits in the landscape, a real comparison with the tools that also sync to many providers, and where it can go, including what is plainly missing right now.
What AeroCloud is today
AeroCloud is the set-and-forget side of AeroFTP: you pick one local folder and one remote, and a background worker keeps them continuously in sync while the app is open. It is the "personal cloud folder" surface, the Dropbox mental model, built on the same sync engine that AeroSync exposes as ad-hoc power-user jobs. AeroCloud is the always-on preset, AeroSync is the raw engine as manual jobs, same core. One honest clarification up front, since it came up: this worker runs in-process, it is not an OS service, so it syncs while AeroFTP is open (including in the tray) and stops when you quit. The one part of AeroFTP that does run at the OS level at login is a separate feature, AeroMount, which mounts a remote as a live filesystem, not AeroCloud.
What is actually implemented today, verified against the code rather than the marketing:
Reference material already exists and I would rather point to it than repeat it: the design doc and the current-state audit live in the internal roadmap, and the user-facing surface is documented at https://docs.aeroftp.app/features/aerocloud .
Where it positions
The category everyone competes in splits cleanly along two axes: how many backends you can sync to, and who holds the encryption key. The honest read is that the incumbents each win one axis and lose the other, and almost nobody offers real-time desktop sync on top of both.
quadrantChart title Continuous-sync landscape (two of the three axes) x-axis "Single proprietary cloud" --> "Provider agnostic, many backends" y-axis "Provider holds the key" --> "Client holds the key (zero knowledge)" quadrant-1 "Many backends, your key" quadrant-2 "Your key, one backend" quadrant-3 "One cloud, their key" quadrant-4 "Many backends, their key" Dropbox: [0.12, 0.15] OneDrive: [0.16, 0.18] Google Drive: [0.10, 0.22] Maestral: [0.14, 0.12] Nextcloud: [0.24, 0.74] Syncthing: [0.34, 0.70] Resilio: [0.30, 0.64] Restic: [0.80, 0.86] Kopia: [0.82, 0.83] rclone crypt: [0.90, 0.88] rclone plain: [0.90, 0.14] MultCloud: [0.78, 0.24] odrive: [0.68, 0.18] Air Explorer: [0.60, 0.28] AeroCloud: [0.92, 0.85]The third axis, the one the chart cannot draw, is "real-time continuous sync in a desktop GUI". That is where the dot nearest to AeroCloud falls away: rclone crypt reaches many backends with your key, but it is a CLI and its bidirectional mode is not real-time (you run it on a schedule and it carries explicit data-loss cautions). So the whitespace AeroCloud aims at is narrow and real: continuous, real-time, GUI desktop sync to any of many backends, with an optional key the backend never sees.
Architecturally that is one pipeline:
flowchart LR A[Local folder] -->|watcher + scheduler| B[Sync engine, shared with AeroSync] B --> C{Folder bound to a crypt profile?} C -->|yes| D[Client-side AEAD with your key] C -->|no| E[Passthrough, plaintext] D --> F[(Any backend: SFTP / S3 / WebDAV / Drive / Dropbox / ...)] E --> FThe real comparison
Capabilities, verified against each project's own docs (sources at the bottom):
On encryption specifically, because the word "encrypted" hides a lot:
The honest one-line summary: the tools that today encrypt with your key across arbitrary storage backends (rclone crypt, Restic, Kopia) are CLI or scheduled-backup tools that do not do real-time bidirectional sync. Everyone else is either single-cloud, or not zero knowledge, or P2P-only, or not a syncer. That intersection is what makes AeroCloud worth building rather than a fifth clone of Dropbox.
Where the incumbents are honestly better
I am not going to pretend otherwise. Dropbox, OneDrive and Google Drive have a decade of hardened conflict resolution, block-level delta sync, and reliability at scale that a younger engine has to earn, not claim. And on mobile the big three plus Resilio ship polished first-party apps with background sync, while the provider-agnostic and self-hosted camp is weak there. A desktop-native tool inherits that mobile gap unless it invests separately.
What is missing today
Being a design thread, this is the useful part. Current limits, from the code:
Where it can go
The expandability axes I am weighing, roughly in order of value:
Questions for the thread
Sources for the comparison: Dropbox security help, Microsoft OneDrive data-encryption docs, Google Workspace client-side encryption docs, Syncthing security and untrusted-device docs, Nextcloud end-to-end docs and desktop repo, rclone bisync and crypt docs, Resilio security brief, Maestral repository, Restic and Kopia documentation. All prices and edition gates are July 2026 snapshots and drift.
Beta Was this translation helpful? Give feedback.
All reactions