Drag a file to your menu bar.
Get a link back.
macOS 14+ · Apple Silicon & Intel · Free & open source
Features
Drop any file or folder onto the menu bar popover. Folders are zipped automatically before upload.
Private, 1 Day, 30 Days, Public. TTL panes use S3 lifecycle tags so files expire without cleanup scripts.
Files above 5 MB switch to multipart upload automatically — 8 MB chunks, 4 concurrent parts.
Works with AWS, Cloudflare R2, Backblaze B2, MinIO, and DigitalOcean Spaces via a custom endpoint field.
A six-second demo, then the full Settings tour.
How it works
Click the Loft icon in the menu bar to reveal the popover, then drag any file or folder from Finder onto it.
Choose how long the link should live — Private, 1 Day, 30 Days, or Public — and release the file.
Upload completes, a system notification appears, and the shareable URL lands on your clipboard automatically.
First launch
Loft is ad-hoc signed with a local certificate, not Apple-notarized. Apple charges €99/year for a Developer ID and this is a tiny personal tool, so we skip that. The tradeoff: on the very first launch macOS will refuse to open the app. One-time, takes 15 seconds.
The first time you open Loft, macOS shows this warning. Click Done.
Go to System Settings → Privacy & Security. Scroll to the Security section — you'll see a line about Loft being blocked, with an Open Anyway button.
Click Open Anyway, confirm the follow-up prompt, and Loft launches. macOS remembers this choice for this copy of the app — you only do it once per install.
Terminal alternative
Prefer the shell? Strip the quarantine attribute and open it directly:
xattr -dr com.apple.quarantine /Applications/Loft.app && open /Applications/Loft.app Setup
You need an S3 bucket with lifecycle rules for the TTL panes, and a narrow IAM policy scoped to that bucket. The setup guides walk through everything — bucket creation, lifecycle rules, CORS, and the exact policy JSON.