DEV Community

Christian Ahrweiler
Christian Ahrweiler

Posted on

I Built a Mac App That Turns Any FTP Server Into a Native macOS Drive


I built myCloudDrive — a macOS menu bar app that connects to your own server via SFTP, FTPS, or WebDAV and mounts it as a real drive in Finder. No cloud provider, no subscription, no middleman. Your files stay on your server.

The Problem

I have files on my VPS. I have files on shared hosting. I have files on a NAS. Every time I need something, it's the same dance: open Transmit or Cyberduck, connect, navigate, download, edit, re-upload.

What I actually wanted was simple: my server showing up in Finder like a USB drive.

macOS has had "Connect to Server" for years, but it's flaky, disconnects randomly, and doesn't handle FTPS at all. Third-party mount tools exist but most are slow network filesystems that choke on large files.
I wanted something different: a local drive that syncs — fast local reads, background sync to the server, works offline.

The Architecture

myCloudDrive runs as a menu bar app and does three things:

  1. Creates a sparse disk image and mounts it at /Volumes/myCloudDrive — it shows up in Finder's sidebar under Locations, just like an external drive

  2. Syncs bidirectionally with your server using a three-way merge algorithm (local state vs. remote state vs. journal of last known sync)

  3. Watches for changes via FSEvents and syncs automatically within seconds

The sync engine supports three protocols:

  • SFTP (SSH) — via libssh2
  • FTPS (FTP over TLS) — via curl
  • WebDAV (HTTP/HTTPS) — via URLSession

Why Not the Mac App Store?

I tried. The app's architecture is fundamentally incompatible with the MAS sandbox:

  • hdiutil (creates the disk image) — sandboxed apps can't execute system binaries
  • /usr/bin/curl (FTPS) — same restriction
  • FSEventStream on /Volumes/ — sandboxed apps can't watch paths outside their container

I also attempted Apple's File Provider extension (the "proper" way to add virtual filesystems on macOS). After weeks of fighting its poorly documented, buggy API, I abandoned it. The sparse disk image approach just works.

myCloudDrive is notarized by Apple and distributed directly from myclouddrive.app. No Gatekeeper warnings, no sketchy unsigned binary. Many great Mac apps ship this way — Transmit itself left the MAS years ago.

Privacy by Architecture

This isn't a feature toggle. It's how the app is built:

  • No account creation. You enter your server credentials, that's it.
  • No cloud relay. The app connects directly to your server. Traffic never touches a third-party service.
  • No analytics, no tracking, no telemetry. Zero outbound connections except to your own server.
  • Your files never leave your infrastructure.

Try It

myclouddrive.app — $24.99, one-time purchase, no subscription.
Works with any SFTP, FTPS, or WebDAV server.
Your VPS, your NAS, your shared hosting. Your files, your drive.

Top comments (0)