Citrus

Drop it on a slice.

Citrus converts files mid-drag, on your own machine. Press Shift, Ctrl or Alt, a wheel opens around the file, let go on the format you need. Nothing is uploaded.

PNGWebPHEICTIFFAVIFBMPGIFPDFphoto.jpgCONVERTCropCompressResize ½Rotate 90°FlipGrayscaleRemove BGAdd backgroundOCR textCombine to PDFStrip metadataphoto.jpgTOOLSLocalSendnearbyFloatshelfCopyMove…Copy PathTerminalRevealTrashphoto.jpgACTIONS

Pick a fruit, or press Shift Ctrl Alt on your keyboard.

Free and MIT licensed · X11 and Wayland · an early port, not released yet

X11 or Wayland, both work.

Citrus waits in the system tray. How the wheel opens depends on your session, because Wayland keeps other apps’ drags private.

On X11: hold a key mid-drag.

  1. Drag. Pick up a file in Nautilus, Dolphin, Thunar or on the desktop.
  2. Tap. Shift Convert, Ctrl Tools or Alt Actions. The wheel opens under the pointer.
  3. Drop. Let go on a slice; the copy lands beside the original.

Apps running under XWayland behave the same way on a Wayland desktop.

On Wayland: drop on the bubble.

A small floating bubble sits on your desktop. Drop files on it while holding a key, and that key’s wheel opens around them; with no key, Convert. Then click a slice. Drag the bubble anywhere, or hide it in Settings.

PNGWebPHEICTIFFAVIFBMPGIFPDFphoto.jpgCONVERT
CropCompressResize ½Rotate 90°FlipGrayscaleRemove BGAdd backgroundOCR textCombine to PDFStrip metadataphoto.jpgTOOLS
LocalSendnearbyFloatshelfCopyMove…Copy PathTerminalRevealTrashphoto.jpgACTIONS
Drop a file on the bubble, or try photo.jpg with

Nautilus

Right-click › Scripts › Citrus › Convert, Tools or Actions.

Dolphin

Right-click › Citrus › Convert, Tools or Actions.

No keyboard mode yet

Those menus open the same wheel on a selection, without a drag, on X11 and Wayland alike.

ShiftConvert

Tap Shift mid-drag for a new format. The wheel only shows what makes sense for the file in your hand: a photo gets image formats, a PDF gets documents.

The port's Convert wheel around photo.jpg, rendered by the port itself: PNG, WebP, HEIC (greyed out, heif-enc missing), TIFF, AVIF, BMP, GIF and PDF.
Rendered by the port itself. HEIC is grey because heif-enc was missing.
  • JPG
  • PNG
  • WebP
  • TIFF
  • AVIF
  • GIF
  • BMP
  • PDF
  • DOCX
  • PPTX
  • XLSX
  • CSV
  • TSV
  • JSON
  • Markdown
  • TXT
  • RTF
  • HTML
  • EPUB
  • ODT
  • SRT
  • VTT
  • ZIP
  • TAR
  • GZIP
  • HEIC
  • MP4
  • MOV
  • MKV
  • WebM
  • AVI
  • WMV
  • M4A
  • WAV
  • AIFF
  • MP3
  • FLAC
  • OGG
  • Opus
  • WMA

Built inWith a free helper, mostly ffmpeg. Missing helpers grey out their slices.

The full chart what goes in, what comes out
PNGBuilt in
KindTakesTurns into
ImagesJPG PNG WebP TIFF BMP GIF SVG, HEIC AVIF
  • JPG
  • PNG
  • WebP
  • HEIC
  • TIFF
  • AVIF
  • BMP
  • GIF
  • PDF
AudioAnything ffmpeg reads
  • M4A
  • WAV
  • AIFF
  • MP3
  • FLAC
  • OGG
  • Opus
  • WMA
VideoAnything ffmpeg reads
  • MP4
  • MOV
  • GIF
  • M4A
  • MKV
  • WebM
  • AVI
  • WMV
  • MP3
PDFPDF
  • DOCX
  • PPTX
  • XLSX
  • JPG
  • PNG
  • TXT
  • Markdown
  • RTF
  • HTML
  • EPUB
DocumentsDOCX RTF TXT Markdown HTML EPUB ODT, DOC
  • DOCX
  • PDF
  • Markdown
  • TXT
  • RTF
  • HTML
  • EPUB
  • ODT
SlidesPPTX PPT ODP
  • PDF
  • JPG per slide
  • PNG per slide
  • PPTX
SpreadsheetsXLSX CSV TSV XLS ODS
  • XLSX
  • CSV
  • TSV
  • Markdown
  • HTML
  • JSON
  • PDF
SubtitlesSRT VTT
  • SRT
  • VTT
  • TXT
ArchivesZIP TAR GZ BZ2 XZ, RAR 7z, any file or folder
  • ZIP
  • TAR
  • GZIP

The helpers are ffmpeg (all audio and video, and reading HEIC and AVIF), heif-enc (saving HEIC), poppler or MuPDF (PDF pages to images and slides), pandoc (richer documents), qpdf, Tesseract, rembg, and 7-Zip or unar. LibreOffice handles slides and the older Office formats. The original is never modified.

CtrlTools

Tap Ctrl mid-drag and the wheel fills with small edits for the file in your hand. Each one writes a new file beside it with a plain suffix; the original stays as it was.

Show the tools for
LocalSendnearbyFloatshelfCopyMove…Copy PathTerminalRevealTrashphoto.jpgACTIONS

AltActions

Tap Alt mid-drag to do something with the file itself instead of making a new one.

Send with LocalSend, Copy, Move, Copy Path, open a Terminal there, Reveal in your file manager, Trash. The Float shelf is greyed out for now.

Supports LocalSend.

There is no AirDrop here. Instead Citrus speaks LocalSend, the free, open-source app for sharing files nearby. Install LocalSend on the phone or computer you send to; Citrus does the sending.

Pixel 8AndroidOffice PCWindowsnasLinuxiPadiPadOSphoto.jpgSEND TO
Citrus, sending. Every LocalSend app on your network turns up as a slice. Demo devices.
  1. Open LocalSend over there. On the phone or computer that should get the file. It announces itself on your network.
  2. Drop on LocalSend. Drag a file, tap Alt, let go on the LocalSend slice. The wheel turns into the devices around you; pick one.
  3. They accept in LocalSend. The app asks first, then saves the file. Progress shows in the Citrus toast, and its close button cancels.
The LocalSend app on an iPhone, on its Receiving files screen: one photo done, a second at a quarter, a video queued, and a total progress bar with Advanced and Cancel.
LocalSend, receiving. The official app on the other device, as shown on localsend.org.

Only sends. Citrus never receives files; LocalSend itself does that. Folders go as their files.

The real protocol. LocalSend v2: found by multicast, sent over HTTPS on port 53317. No server, no account.

Your name on it. Set the name LocalSend shows for you, and the port, in Settings › LocalSend.

No PIN prompt yet. Receivers that ask for a PIN are declined for now; the rest work as on a Mac.

LocalSend is free software by the LocalSend contributors, Apache-2.0. Logo and screenshot from github.com/localsend/localsend and localsend.org. Citrus is not affiliated with LocalSend.

An early port, said plainly.

The Linux build is written in Rust, built and unit-tested, and checked to compile, but it has not been run on a real Linux desktop yet. Try it if you like rough edges, and back up what you convert.

Built

  • The three wheels, read from the same catalog as the Mac app.
  • Opening the wheel mid-drag on X11, and the drop bubble on Wayland.
  • Citrus entries in Nautilus and Dolphin.
  • Every converter and tool except the editors, with the helpers you have.
  • Sending with LocalSend, the tray icon, Settings and starting at login.
  • The citrus command line, checked by the same conformance suite as the Mac.

Not yet

  • The Crop, Trim and Add background editors and the Float shelf are greyed out.
  • No keyboard mode yet; the file manager menu covers the same need.
  • LocalSend receivers that ask for a PIN are declined.
  • No installers yet: plain .zip and .tar.gz archives, without helpers bundled.
  • Built and unit-tested, and checked to compile for both, but not yet run on a real Windows or Linux desktop.

Citrus started on the Mac, where it is a native Swift app. The port shares its catalog of slices and its command line.

Nothing leaves your computer.

Every conversion runs on the machine the file is already on, and the copy lands in the same folder. Drop any file on the folder to see where.

No uploads.
No server, no account, no queue. The system’s frameworks do the work, with the helpers you choose to install.
Originals stay put.
Output is always a new copy beside the original, or in a folder you pick in Settings. Nothing is moved or overwritten.
Sending stays home.
LocalSend goes device to device over your own network, and only after the other side accepts.
No snooping permissions.
On a Mac the default flow needs neither Accessibility nor Input Monitoring. On Windows, no hooks.

Downloads3 items

  • holiday.heic3.1 MB · the original
  • holiday.jpgJPEG image · the new copy
  • invoice.pdf212 KB

Drop a file here

0 bytes of it sent anywhere. This page reads a dropped file’s name and size, and nothing else.

Open source, and early.

No installer yet. Each tagged version will come as a plain .tar.gz archive, without helpers bundled.

  1. Linux Coming soon.tar.gz, X11 or Wayland

    Runs from the system tray, with the same three wheels as the Mac app.

  2. The source Coming soonMIT

    Written in Rust, built from the same catalog of slices as the Mac app.

  3. The helpers it usesmissing ones grey out their slices

    ffmpeg, LibreOffice, pandoc, poppler, qpdf, Tesseract, heif-enc, 7-Zip or unar, and rembg for Remove BG.