Mirror your iPad screen to your Mac or PC. Share presentations, demos, and more with the world.
- Download the latest
.dmgfrom Releases - Open the DMG and drag Reflection into the Applications folder
- Launch Reflection from Applications
Reflection is distributed as an open-source, ad-hoc signed application. macOS Gatekeeper may display a warning that the app is from an unidentified developer.
To open Reflection:
-
Right-click (or Control-click) the app and select Open -- on macOS versions before Sequoia 15.1, this is sufficient
-
On macOS Sequoia 15.1+, go to System Settings > Privacy & Security, scroll down, and click Open Anyway next to the Reflection entry
-
Alternatively, run this command in Terminal before first launch:
xattr -cr /Applications/Reflection.app
This is standard behavior for all macOS apps distributed outside the App Store without a paid Apple Developer ID ($99/year). The app contains no malware -- the source code is fully open and auditable.
Recommended: Download the Setup installer (.exe) from Releases. The installer:
- Installs to Program Files with Start Menu shortcuts
- Configures Windows Firewall automatically
- Registers an uninstaller in Settings > Apps
Portable: Download the .zip if you prefer a standalone copy -- extract to any folder and run Reflection.exe.
To uninstall: Settings > Apps > Reflection > Uninstall, or use the Start Menu shortcut.
Windows SmartScreen may display a warning that the app is from an unknown publisher. Click More info, then Run anyway. This is standard behavior for unsigned open-source applications.
- Connect your iPad to your Mac via USB
- If prompted, tap Trust on your iPad
- Grant Reflection camera access when prompted (iPads appear as camera devices through CoreMediaIO)
- Click Mirror next to your iPad in the device list
- Ensure your iPad and PC are on the same Wi-Fi network
- Launch Reflection -- the onboarding wizard guides you through setup on first run
- Open Control Center on your iPad, tap Screen Mirroring, and select your PC's name
- Your iPad screen appears in the Reflection mirror window
- macOS 13.0 (Ventura) or later
- iPad connected via USB cable
- Camera permission granted
- Windows 10 version 1809 or later (Windows 11 recommended)
- iPad and PC on the same Wi-Fi network
- Windows Firewall exception for Reflection
swift build # Build
swift test # Run testsRequires Xcode 16+ with Swift 6.0.
Prerequisites:
- Visual Studio 2022 with C++ Desktop Development workload
- MSYS2 (for GStreamer)
- vcpkg (for dependencies)
MSYS2 packages:
pacman -S mingw-w64-ucrt-x86_64-gstreamer \
mingw-w64-ucrt-x86_64-gst-plugins-base \
mingw-w64-ucrt-x86_64-gst-plugins-good \
mingw-w64-ucrt-x86_64-gst-plugins-bad \
mingw-w64-ucrt-x86_64-gst-libavBuild:
cd windows
cmake -B build -A x64 \
-DCMAKE_TOOLCHAIN_FILE=<vcpkg-root>/scripts/buildsystems/vcpkg.cmake \
-DVCPKG_TARGET_TRIPLET=x64-windows \
-DBUILD_TESTS=ON
cmake --build build --config Release
ctest --test-dir build --config ReleaseRequires CMake 3.24+ and C++20 support.
High-level overview of planned features and platform support.
- USB mirroring -- Mirror iPad screen over a wired USB connection (macOS)
- Wireless mirroring -- Mirror iPad screen over Wi-Fi via AirPlay (Windows)
- Audio passthrough -- Route iPad audio alongside the video feed
- Multi-device mirroring -- Display multiple iPads simultaneously
- Windows support
- Linux support
- Sparkle auto-updates -- In-app update notifications and one-click upgrades
Contributions are welcome! Check out the Contributing Guide to get started.
- Contributing Guide -- How to report bugs, suggest features, and submit code
- Code of Conduct -- Standards for community participation
- Security Policy -- How to report vulnerabilities privately
GPL-3.0 License -- see the full text for details.
Third-party dependency licenses are documented in THIRD_PARTY_LICENSES.md.