Command-line AirDrop for Linux, letting iPhones and Linux machines send files to each other over AWDL on supported non-Apple Wi-Fi cards.
spieglt/FlyingCarpet
Cross-platform file transfer between Android, iOS, Linux, macOS and Windows over ad hoc WiFi or a shared network, with no internet connection needed.
Open-source alternative to:AirDrop
- Stars
- 5,376
- Forks
- 258
- Open issues
- 14
- Last commit
- 15 days ago
What is it?
Flying Carpet is a file transfer app that moves files directly between Android, iOS, Linux, macOS and Windows devices. It works in two modes: one device creates an ad hoc WiFi hotspot for the other to join, or both devices connect to an existing WiFi or wired network and find each other there. Neither mode needs an internet or cellular connection, only two devices with WiFi or ethernet hardware, and Bluetooth can optionally be used to exchange hotspot credentials automatically.
Hotspot mode requires the devices to be in close range. In shared network mode, a phone on WiFi can transfer with a desktop on ethernet. The receiving device shows a one-time password with a QR code, which the sender enters or scans to start the transfer. Apple devices cannot start hotspots programmatically, so Apple-to-Apple transfers use shared network mode.
Each transfer is encrypted with a Noise protocol handshake keyed from the transfer password, and each transfer uses fresh keys. The desktop app is built with Tauri and Rust, while the Android and iOS/macOS apps are written in Kotlin and Swift.
Key features
- 01Transfers files between Android, iOS, Linux, macOS and Windows.
- 02Hotspot mode creates an ad hoc WiFi network that the other device joins.
- 03Shared network mode works over an existing WiFi or wired network.
- 04Optional Bluetooth exchange of hotspot credentials, with a pairing code.
- 05Transfers are encrypted with a Noise protocol handshake and fresh keys per transfer.
Use cases
- Moving a large file between two computers when no flash drive or shared network is available.
- Sending files from a phone to a desktop on the same local network.
- Transferring files between Apple devices on a shared Personal Hotspot network.
- Sharing files between different filesystems without setting up a network share.
Quick start
- 1
Download the app from the releases page or the store for your platform
- 2
On macOS, install with Homebrew
brew install flying-carpet - 3
On Windows, install with winget in PowerShell
winget install spieglt.FlyingCarpet
Things to know
- Licensed under GPL-3.0, a copyleft license.
- Apple devices cannot create hotspots, so Apple-to-Apple transfers need a shared network.
- Version 10 is not compatible with version 9 or earlier.
- The Android version requires Android 10 or newer and may not work on some Xiaomi, MIUI, or HarmonyOS devices.
In collections
Topics
FAQ
- What is FlyingCarpet?
- Cross-platform file transfer between Android, iOS, Linux, macOS and Windows over ad hoc WiFi or a shared network, with no internet connection needed. Flying Carpet is a file transfer app that moves files directly between Android, iOS, Linux, macOS and Windows devices. It works in two modes: one device creates an ad hoc WiFi hotspot for the other to join, or both devices connect to an existing WiFi or wired network and find each other there. Neither mode needs an internet or cellular connection, only two devices with WiFi or ethernet hardware, and Bluetooth can optionally be used to exchange hotspot credentials automatically.
- Is FlyingCarpet free to use? What license does it have?
- FlyingCarpet is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is FlyingCarpet still maintained?
- Actively maintained. The last commit to FlyingCarpet was on Oct 24, 2026.
- What can I use FlyingCarpet for?
- Moving a large file between two computers when no flash drive or shared network is available. Sending files from a phone to a desktop on the same local network. Transferring files between Apple devices on a shared Personal Hotspot network. Sharing files between different filesystems without setting up a network share.
- How do I install FlyingCarpet?
- Download the app from the releases page or the store for your platform On macOS, install with Homebrew: brew install flying-carpet On Windows, install with winget in PowerShell: winget install spieglt.FlyingCarpet
- Where can I get FlyingCarpet?
- The source code and installation instructions are on GitHub: https://github.com/spieglt/FlyingCarpet
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A GTK Linux client for Google's Quick Share protocol, for sending and receiving files wirelessly with Android devices.
Free, open-source app that shares one mouse, keyboard, screens, files, clipboard and phone features across Mac, Windows, Linux and Android, with no account or cloud.
Push-to-talk voice typing for desktop and Android: hold a hotkey, speak, and the text is pasted at your cursor.
A CLI tool that sends files and folders between any two computers, peer-to-peer with relay fallback and end-to-end encryption via a shared code phrase.
Cross-platform app for sending files directly between devices over the internet, end-to-end encrypted, with no cloud storage or size limits.