Tangelo is a tiny Mac menu-bar app that converts files where you drag them.
No window to open, no upload, no settings. The new file lands next to the old one.
No Mac needed. The try-it page has a sample photo. Drag it, hold ⌃, and drop it on a slice. You get a real converted file to download. You can use your own image too, and it never leaves your browser. On a phone, tap the photo, then tap a key button.
Start dragging any file, from Finder or any app. Hold one key and a wheel opens right under the pointer. Let go of the file on a slice.
| Hold | Wheel | What is on it |
|---|---|---|
| ⌃ | Convert | JPG · PNG · TIFF · HEIC · AVIF · WebP, and Smaller PDF |
| ⌘ | Tools | Compress · Resize 50% · Smaller PDF |
| ⌥ | Actions | AirDrop · Copy Files · Copy Paths · Open in Terminal · Show in Finder |
The wheel only shows choices that work for every file you are dragging. Drop in the middle, or anywhere off the wheel, and nothing happens.
Prefer clicking? Drop files on the menu-bar icon, or click it and choose Choose Files….
| In | Out |
|---|---|
| HEIC, JPEG, PNG, TIFF, WebP, AVIF, GIF, BMP | JPG, PNG, TIFF, HEIC, AVIF, WebP |
| a smaller PDF (kept only if it really is smaller) |
- Never overwrites.
photo.heicbecomesphoto.jpg. If that name is taken, you getphoto 2.jpg. - No half files. Tangelo writes to a temp file, then moves it into place. A failed job leaves nothing behind.
- Nothing leaves your Mac. Images use Apple's own ImageIO and PDFKit. WebP uses Google's
cwebp, which ships inside the app. - No permissions to grant. Tangelo sees drags by watching the mouse and the drag pasteboard, so it does not need Accessibility access.
You need macOS 14 or later on Apple silicon, and the Swift 6 toolchain (Xcode or just the Command Line Tools: xcode-select --install).
git clone https://github.com/esoteric-frog/Tangelo.git
cd Tangelo
scripts/install.sh # builds, copies to /Applications, starts itTangelo adds itself to Login Items the first time it runs from /Applications.
Using the release download instead
The app on the Releases page is ad-hoc signed, not notarized. macOS will block it the first time. After you move it to /Applications, run:
xattr -dr com.apple.quarantine /Applications/Tangelo.appscripts/test.sh # swift test (works without full Xcode)
scripts/make-app.sh # builds build/Tangelo.app, ad-hoc signedscripts/fetch-tools.sh downloads cwebp from Google and checks its SHA-256 before use.
How it fits together
flowchart LR
D[Drag + held key] --> W[Wheel]
M[Drop on menu-bar icon] --> P[Panel]
W --> R[Registry]
P --> R
R --> C1[ImageConverter<br/>ImageIO + cwebp]
R --> C2[PDFShrinkConverter<br/>PDFKit]
R --> C3[ImageToolConverter<br/>compress / resize]
C1 & C2 & C3 --> Q[JobQueue<br/>2 at a time]
Q --> N[OutputNamer<br/>temp file, then move]
Sources/TangeloCoreholds the logic and has no UI, so all of it is under test.Sources/Tangelois the menu-bar app: the drag watcher, the wheel and the panel.- A new format is one new
Converter. The wheel and panel do not change.
- Video and audio (bundled
ffmpeg) - Documents: Word, Pages, EPUB, PowerPoint
- Strip photo metadata, read QR codes
- A floating shelf that holds files for later
MIT. cwebp is BSD 3-Clause; its notice ships in Tangelo.app/Contents/Resources/licenses/.
