AirSync macOS: an Android mirror for a Mac, built in SwiftUI
AirSync macOS - Bring the forbidden macOS continuity to Android
At a glance
- What is it?
- AirSync is a macOS application that brings Android continuity to a Mac, using scrcpy and adb to mirror and control an Android device from the desktop. Its repository is worth reading for the shape of a small commercial Mac app: a Sparkle update feed, a widget extension, a CrowdIn translation workflow and a self-compile scheme in Xcode.
- Who is it for?
- Use AirSync if you want to mirror and control an Android phone from a Mac rather than juggling two devices, because it packages scrcpy and adb into a native SwiftUI application with notifications, hotkeys and a menubar presence. Do not assume it is free software to fork, because the repository carries a commercial end user licence agreement alongside the licence file and the licence field itself is a custom classification GitHub cannot label.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 10 days ago.
- What is it written in?
- Mainly Swift, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What AirSync does and how it does it
The project describes itself as AirSync macOS, with the tagline of bringing the forbidden macOS continuity to Android. The word continuity is Apple's term for the feature set that lets a Mac and an iPhone hand off work, share the clipboard, relay messages and show one device's screen on the other, all of which Apple restricts to its own hardware. AirSync's pitch is that a subset of that is possible between a Mac and an Android phone, and the README shows a looping video of the app doing it. The requirements section gives the mechanism away: the optional dependencies are scrcpy, adb and media-control, all installed from Homebrew. So this is a native wrapper around the standard open source Android tooling rather than a from-scratch screen capture implementation, which is the reason it can work at all and the reason it inherits scrcpy's constraints.
Two ways to install it
You can install the AirSync mac app from either the GitHub releases or from Homebrew.
brew install airsyncThe Homebrew route is the one the README leads with for the install command, and the GitHub releases link is there for people who want the build directly. The requirements are listed immediately after. The minimum is macOS 14.5, and the optional items are scrcpy, adb and media-control installed from brew. The fact that those three are optional rather than bundled tells you the application shells out to tools it expects on your PATH, and that the media-control component in particular is what enables the media key handling that Continuity provides on Apple hardware.
What the release notes say the recent work was
The release tags are descriptive rather than numeric, which is a good sign for a project with one maintainer. Version 4.1.0, published on 2026-09-25, is titled Widgets, Efficiency, Improved connection, Hotkeys, Summon screenshots, and more. Version 4.0.0, from 2026-07-25, is All new AirSync v4 with Nearby connection, Improved mirroring, menubar glance and more. And v3.2.0 from 2026-05-09 covers a new menubar UI and dismiss notification buttons. Read together, those three titles describe an application that has been gaining the features a Mac user would expect from a windowed companion app: a widget, hotkeys, a quick look from the menu bar, and the ability to summon a screenshot of the phone on demand.
The repository tells you it is a commercial product
The top-level listing contains a COMMERCIAL-EULA.txt file alongside the LICENSE file, and the repository's licence field carries a custom classification that GitHub cannot label. That combination is the honest summary of the licensing: there is a licence file, and there is also a commercial end user licence agreement, and the relationship between them is what you need to read before you redistribute, embed or build on the code. The repository also contains DOCUMENTATION.md, SECURITY.md, CONTRIBUTING.md, an AppIcon.icon directory, an AirSync.entitlements file and a separate AirSyncWidgetExtension.entitlements file, so there is a real widget extension with its own entitlement, not just a preferences pane.
Sparkle, the update feed and the build script
Updates go through Sparkle, the standard macOS update framework, and the repository carries the pieces that implies: an appcast.xml describing the release feed, an updates.json, and an airsync.rb Ruby script alongside an airsync.build.config. The build itself is Xcode-native. The README describes it precisely: in Xcode select the AirSync Self Compiled scheme, then from the menu bar choose Product and then Archive, and when the process finishes the organiser window appears, where you select Distribute, then Custom, then Copy App, and choose the output folder. The AirSync.app will then be in that folder. That is a one-click local build with no packaging toolchain to install, which is a deliberate choice for a project whose distribution is a signed archive.
The libraries it stands on
Five libraries are credited, and each one names a capability. dagronf/QRCode provides QR code generation, which is how a phone is paired with the desktop. httpswift/swifter is a Swift HTTP server, which is how the app receives requests. Sparkle is the update framework. ungive/media-control is the media key handling on macOS, the third optional dependency the README lists for installation. And tfmart/LottieUI is a Lottie animation view, which is presumably how the on-screen animations are rendered. The presence of the scrcpy-server directory at the repository root shows that the Android side is vendored rather than downloaded, so the pairing does not depend on a second machine having scrcpy already installed.
Localisation through CrowdIn
The README asks for help translating AirSync to your language, with a link to the CrowdIn project, and the repository carries a crowdin.yml configuration. That is a workflow choice with two consequences. The first is that translations come from a platform rather than from pull requests, so a contributor does not need to know the repository's file layout to fix a string. The second is that the strings and the code are separated, which is why the repository has no obvious localisation source directory in its listing. There is also a demo video linked on YouTube, and the project keeps its own documentation on a Notion site under the airsync.notion.site address, with a separate DOCUMENTATION.md file in the repository.
Where AirSync is the wrong choice
Four limits apply. It is macOS only, and the README says so plainly rather than pretending otherwise: for Windows it does not build for that platform and points to a separate project, Sefirah, instead. It depends on scrcpy and adb being installed, so it is not a self-contained application and the pairing experience is bounded by what those tools support. The continuity it brings is not Apple's continuity, so the features are an approximation: a mirror and control, with the media key handling and clipboard behaviour bolted on around scrcpy rather than an integrated protocol between two Apple devices. And the licensing is the constraint that will stop a team from adopting it, because a commercial end user licence agreement and a contributor guide coexist in the same repository, which means the code is available to read and probably to contribute to, but the binary and the terms around its use are a separate matter from an MIT or Apache grant.
Editorial conclusion
Use AirSync if you want to mirror and control an Android phone from a Mac rather than juggling two devices, because it packages scrcpy and adb into a native SwiftUI application with notifications, hotkeys and a menubar presence. Do not assume it is free software to fork, because the repository carries a commercial end user licence agreement alongside the licence file and the licence field itself is a custom classification GitHub cannot label. Verify first that your Mac is on macOS 14.5 or later, that you have scrcpy, adb and media-control installed from Homebrew since they are listed as optional requirements, and that you read the licensing terms before redistributing it.
Frequently asked questions
What does AirSync macOS do?
It is a macOS application that brings the forbidden macOS continuity to Android, mirroring and controlling an Android device from a Mac. It is built with SwiftUI and works by driving scrcpy and adb, with media-control for the media key handling.
How do I install AirSync?
From the GitHub releases or from Homebrew with brew install airsync. The minimum requirement is macOS 14.5, and scrcpy, adb and media-control installed from brew are listed as optional requirements.
How do I build AirSync locally?
In Xcode select the AirSync Self Compiled scheme, then choose Product and Archive from the menu bar. When the organiser window appears, choose Distribute, then Custom, then Copy App, and select the output folder, where AirSync.app will then be located.
Does AirSync work on Windows?
No. The README says the author does not build for that platform and points to another project, Sefirah, for Windows users instead.
What are the recent AirSync releases?
Version 4.1.0 from 2026-09-25 brought widgets, efficiency work, improved connection, hotkeys and summon screenshots, version 4.0.0 from 2026-07-25 brought nearby connection, improved mirroring and a menubar glance, and v3.2.0 from 2026-05-09 brought a new menubar UI and dismiss notification buttons.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/sameerasw-airsync-mac)Was this useful?