The world's first native screen extender for Linux.

Your Android phone or tablet becomes a real second monitor. Not a web page in a browser tab: your GPU encodes the screen and the phone's hardware decodes it, so a window you drag across keeps up with your hand.

0 downloads

Install with one command on Ubuntu, Fedora or Arch:

curl -fsSL https://raw.githubusercontent.com/saharshbaiju/tandem/main/install.sh | bash
~30 msfrom your GPU to the phone's glass over USB. About 30 to 60 ms on Wi-Fi.
Hyprland + GNOMEon Arch, Ubuntu 22.04+ and Fedora 36+.
TouchTap, drag and scroll on the phone. Your mouse stays put.
Paired + TLSOnly the phone that scanned your QR code connects.

Not a mirror.

Not a browser tab.

A real monitor.

Your compositor gets a new display, so windows, workspaces and scaling work like on any monitor you plug in. The phone shows it full screen, frame by frame, the moment each one arrives.

scroll

0ms

From the moment a pixel changes on your computer to the moment it lights up on the phone. Typically 25 to 45 ms over USB and about 30 to 60 ms over Wi-Fi, with no buffering anywhere in between. Wi-Fi is quickest on the phone's own hotspot.

Three ways to plug in

USB tethering

Just a USB cable, no developer options. Switch on USB tethering in the phone's hotspot settings and the computer finds it.no setup on the phone

Wi-Fi

No cable at all. Put both on the same network. If a firewall blocks the phone, the live view tells you and opens the port when you press f. It runs best when the computer joins the phone's own hotspot: a direct link, with no router or other devices in the way. The picture stays on that link, and only the computer's own internet use goes over mobile data.cable-free, about 30 to 60 ms

USB cable

The fastest. Turn on USB debugging once and plug in; Tandem sets up the link by itself. Works even when the phone is on mobile data.

One command.
That's the install.

curl -fsSL https://raw.githubusercontent.com/saharshbaiju/tandem/main/install.sh | bash

Paste it into a terminal on Ubuntu, Fedora or Arch. It works out what your desktop is missing, asks for your password once, and adds the tandem command. Nothing to compile, nothing to configure. Run it again to update.

  1. Run the command

    The one above, in any terminal. Here's what it prints: about a minute on a fresh system, seconds when you update.

  2. Start Tandem

    Open a new terminal, run tandem and pick Start Tandem. A QR code appears with the computer's addresses and a pairing code.

    While it waits, the live view checks the cable, the firewall and Wi-Fi, and says why a phone can't connect yet.

    link
    USB cable
    address
    127.0.0.1:5000
    pairing code
    4821 7730
  3. Install the app on the phone

    On the phone, open the latest release, tap Tandem.apk and open the download. Android 8 or newer. Each phone maker words the permission a little differently:

    Download the APK
  4. Scan and connect

    In the app tap Scan QR code, point it at the terminal and tap Connect. Ripples spread from your finger, then the screen dissolves into your extended desktop.

    The phone's own camera app works too: the code opens Tandem and asks you to confirm the computer.

    Touch the phone's screen to use it. On GNOME there's nothing to set up. On Hyprland, touch needs a one-time permission: the installer offers it, or press t in the live view.

Only your phone can connect

The QR code is the key

It carries a random pairing key and the fingerprint of the computer's certificate. Typing an address instead? Enter the pairing code too.

Both sides prove it

Nothing reaches a phone until the phone and the computer have each shown they know the key.

Everything is encrypted

Video and touches travel over TLS. Others on the same Wi-Fi can neither watch nor touch.

Runs where you work

HyprlandArch, or anything running Hyprland. A headless output becomes the phone's monitor, encoded with NVENC or VA-API.
GNOME on WaylandUbuntu 22.04+, Fedora 36+, any GNOME 40+. Mutter makes the virtual monitor, PipeWire and GStreamer carry it.
Android 8+Phones, tablets and foldables. The app decodes in hardware and draws each frame the moment it arrives.

Built in the open.

Every line of Tandem is on GitHub. A star helps more than you'd think: it pushes Tandem in front of a much wider audience, and the community grows with it. Share it with anyone who has a spare phone, or send a fix. Found a bug? Please open an issue on GitHub with your distro, desktop and phone, so it gets fixed for everyone. If it saved you buying a monitor, buy me a chai.

Designs, builds and maintains Tandem.

Buy me a chai

Scan with any UPI app: Google Pay, PhonePe, Paytm or BHIM.

UPI QR code for 7012879159-2@ibl
7012879159-2@ibl