finds.dev← search

// the find

iterate-ch/cyberduck

★ 4,551 · Java · GPL-3.0 · updated Jun 2026

Cyberduck is a libre FTP, SFTP, WebDAV, Amazon S3, Backblaze B2, Microsoft Azure & OneDrive and OpenStack Swift file transfer client for Mac and Windows.

Cyberduck is a mature, GPL-licensed file transfer client for macOS and Windows supporting a wide range of protocols and cloud storage providers — FTP, SFTP, S3, Azure, B2, OneDrive, Google Drive, and more. It's been around long enough that it underpins Mountain Duck (a paid product from the same team), which tells you the core is production-grade. Aimed at developers and power users who need a single tool across many storage backends.

Per-protocol feature classes (AzureCopyFeature, B2LargeUploadWriteFeature, etc.) are cleanly isolated — adding a new backend doesn't require touching unrelated code. Built-in Cryptomator integration means client-side encryption works transparently across all supported backends without a separate vault app. The CLI ships as a first-class artifact alongside the GUI, not an afterthought, with proper Linux deb/rpm packaging. Integration test coverage per protocol is extensive — every backend has its own AbstractXxxTest base class and a full suite of read/write/copy/move/delete tests against live endpoints.

The build setup is genuinely painful: Java + Maven + Ant + MSBuild + Xcode + Bonjour SDK, with documented Chocolatey failures and a warning that installing dependencies 'may or may not fail spectacularly' — this is not a repo you clone and build in 20 minutes. The macOS UI is built on hand-rolled JNA Cocoa bindings (the entire binding/ module) rather than any standard Java UI framework, which makes UI contributions inaccessible to anyone without Objective-C/AppKit knowledge. Protocol implementations share no common HTTP client layer — each backend wires up its own HTTP plumbing, so bugs around timeouts or proxy handling tend to get fixed in one protocol and missed in others. The repo mixes GPL source with a commercial Mountain Duck product built on top, so the licensing boundary is fuzzy if you want to embed the protocol libraries in your own tool.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →