Get started
Linked in three steps
A Mac app, a phone app, one QR code. The relay is a fourth, optional step for when you leave the house.
Step 1
Install the Mac app
Grab the DMG from the latest release, drag Link to Mac into Applications and launch it — it lives in your menu bar. LAN-direct sync is on by default, so on the same Wi-Fi there is nothing to configure.
Prefer building from source? Clone the repo and open the Xcode project:
git clone https://github.com/grkndev/LinkToMac.git cd LinkToMac/mac xcodegen generate && open LinkToMac.xcodeprojStep 2
Install the Android app
Sideload the APK from the same release page (it's a personal-use project — it isn't on the Play Store). Then enable Developer options → Wireless Debugging — the app uses it once to grant itself background clipboard access.
Building it yourself instead:
cd LinkToMac/mobile bun install bun run android # dev client — Expo Go is not supportedStep 3
Pair with the QR code
Open Show pairing QR from the Mac's menu-bar icon and scan it with the phone app. The code carries everything — the pairing secret, the Mac's LAN port, and the relay address if you've set one — so both ends configure themselves. Copy something and paste it on the other device; you're linked.
Step 4 · optional
Host the relay
Only needed to keep syncing when phone and Mac are on different networks. It's a tiny Node.js WebSocket server; run it on any box you own:
cd LinkToMac/server cp .env.example .env # set RELAY_AUTH_TOKEN docker compose up -d # or: npm install && npm run devPut it behind a reverse proxy with TLS (wss), then add its address in the Mac app under Server Settings… and re-show the QR — the phone picks it up on the next scan and still prefers the direct LAN link whenever you're home.
Before you start
- A Mac running macOS (the app sits in the menu bar and starts at login)
- An Android phone with Developer options available
- Both devices on the same Wi-Fi for pairing
- Optional: a server or NAS for the relay, reachable over TLS from outside