PairDrop for macOS 0.1.0
First release of the macOS client — a menu bar app for
PairDrop.
Install
Download the .dmg, open it, drag PairDrop to Applications. macOS 14 or later, Apple
Silicon and Intel.
This build is ad-hoc signed, so macOS will say it can't verify the developer. Open the
app, then go to System Settings → Privacy & Security and click Open Anyway. Or
clear the download flag first:
find /Applications/PairDrop.app -exec xattr -d com.apple.quarantine {} \; 2>/dev/nullPairDrop has no Dock icon. Look for the paper plane in the menu bar; it opens Settings on
first launch so you can enter your instance's address. Nothing is configured by default —
point it at your own server or at pairdrop.net.
What it does
- Drag files onto the menu bar icon — the panel springs open, drop them on the device
you want. - Click the icon to see nearby devices, send files or a message, or check a peer's
connection hash. - Drag selected text onto a device to send it; the receiver gets it on their clipboard.
- Receive files to
~/Downloads, or a folder of your choosing, with an Accept/Decline
prompt in the panel. - Pair devices on different networks with a six-digit key (Settings → Devices). Paired
devices can be set to accept files automatically; secrets live in the keychain. - Open at login, once PairDrop is in your Applications folder.
Transfers are peer-to-peer over a WebRTC data channel, speaking the same protocol as the
web client — so this Mac appears alongside browsers and the Android app on any instance.
Verified interoperating with the PairDrop web client in both directions, single and
multi-file, byte-exact.
Not in this release
- WebSocket fallback. Instances run with
--include-ws-fallbackrelay for peers
without WebRTC; peers advertisingrtcSupported: falseare ignored here. - Folders. Files only. Zero-byte files are skipped — the protocol has no way to signal
their completion, and the web client stalls on them too. - Public rooms. The client speaks the messages; there's no UI.
- Thumbnails on outgoing image transfers.
- Notifications are requested at first launch but macOS may ignore them from an
ad-hoc signed build. The panel's activity list always works.
If devices show "Couldn't connect", check your instance's ICE configuration — with STUN
only, peers that can't reach each other directly have no path, and the web client fails
the same way. Upstream ships a coturn compose file for this.
Full Changelog: https://github.com/hackdefendr/pairdropapp/commits/v0.1.0