On a recent flight home for Christmas, I tried to get some side-project work done on my MacBook… and immediately lost the battle with Seat 28C. I could barely open the laptop, let alone type comfortably.
The real constraint on planes these days is elbow room. That got me wondering: could a small, handheld keyboard and trackpad setup make in-flight work tolerable?
After failing to find anything compelling on Amazon, I realized something obvious: my iPhone already has a great keyboard and touch experience. So why not use it directly?
I looked for existing apps, but the top options felt dated and required both devices to be on the same Wi-Fi network—which isn’t always possible (or desirable when paying ridiculous prices for airplane Wi-Fi).
So over the last few days I’ve been tinkering with a project I call Magic Input. It turns your iPhone into a wireless keyboard and trackpad for your Mac.
How it works (high level):
• The iOS app discovers nearby Macs using MultipeerConnectivity
• Keyboard input and touch gestures are streamed directly to macOS
• The macOS app injects events at the system level (requires Accessibility permissions)
• No shared Wi-Fi network required; devices connect peer-to-peer
It’s very early, but already supports basic typing and cursor control—especially useful in cramped spaces like planes.
Here’s the TestFlight link for the brave. You’ll need to install the same app on both macOS and your iPhone:
I’m considering open-sourcing this project, if there’s further interest! I’ve never done this before, but I wonder how well an open-source “pay to download in the App Store” project performs.
Back when I was in the Air Force, I hated the UX for referencing Air Force publications on mobile. So I created an iOS app called AFI Explorer [0] which has continued to get hundreds of downloads every month for the past 5 years.
Since I’ve been shifting more towards platform engineering work in my career, the best reward abut this side hustle isn’t the financial benefit, but is the opportunity to stay grounded in software dev. I love seeing the changing APIs each year with the new iOS updates. And the seasonal approach to doing updates is always fun too.
I’m using this dependency project for my side-hustle iOS app development. When the number of authorized users matches the number of users with a valid installation, DeviceCheck simplifies the process.
reply