Case study

Mirror

Control your Mac from your phone.

2026 · iOS 17 and macOS 14 · Swift and SwiftUI

Sometimes I'm nowhere near my laptop when I need it. I'll be in bed wondering whether a build finished, waiting on a Slack reply, or trying to find a file someone has just asked me for.

Sometimes getting up might be a bit of a struggle 😅. So I built Mirror. It puts the Mac's screen on my phone over Wi-Fi and lets me use it from wherever I am in the house.

Using a Mac with your thumb

The phone behaves like a trackpad. Slide anywhere to move the pointer, tap to click, two fingers to scroll, three to switch desktops. Move slowly and it is precise, move quickly and you cross the whole screen.

Finding things

Half of why I wanted this was files, so search has its own screen. You type, results come in as you go, and folders open like folders. Photos, videos, PDFs and code all open on the phone, and anything you find can be saved to it, shared, or opened back on the Mac.

The home screen: a paired MacBook Air, its free space, and folder sizes for Desktop, Documents, Downloads, Pictures, Movies and Music
A search for avatar, filtered to images, listing files with thumbnails, sizes and dates
The Mac's storage and folder sizes, and a search for every avatar on the machine. The counts tick up while the Mac is still adding them.

Staying on the Wi-Fi

Everything happens between the two devices. The Mac shows a code, you type it on the phone once, and the two remember each other after that. There is no account, and the screen never goes through a server.

  • A MacBook and an iPhone below it showing the same Wikipedia article at the same moment, under the line: your Mac's screen, live on your iPhone
  • The phone streaming the Mac with a tap marked on a link and a magnifier below enlarging that spot, under the line: touch it like a trackpad
  • The file browser listing videos on the Mac's desktop with thumbnails, sizes and dates, under the line: every file on your Mac, in your pocket
  • The home screen with a paired MacBook Air, its free space and folder sizes, under the line: it finds your Mac by name
  • The home screen on Mirror's blue with 37 ms to first frame, 60 fps while you scroll and 0 servers involved, under the line: nothing leaves your Wi-Fi
Swift, SwiftUI
The menu bar app on the Mac, the app on the phone
ScreenCaptureKit
Reading the screen, and the sound with it
VideoToolbox
Encoding on the Mac, decoding on the phone