FlowDrop is a cross-platform tool that allows sharing files between devices directly over Wi-Fi.
The source code is published under GPL-3.0 license with anti-commercial clause, the license is available here.
Local network that supports mDNS
- Windows: download and install Apple's Bonjour
- GNU/Linux: install avahi
sudo apt-get install avahi-daemon
I will be glad if you help improve this project
- Improve FlowDrop specification
- Build Bonjour for Windows ARM.
I briefly explain how to send and receive files using flowdrop-cli
. To see all command line options, run flowdrop-cli -h
.
Sending a file is typically a two-step procedure. You first discover devices in local network using the find
command.
Stop the process once you have found the receiver.
$ flowdrop-cli find
Looking for receivers. Press Ctrl+C to stop ...
Found: ID f56648ba9f79 Name=NelonnPC Model=MS-7C56 Platform=Windows SystemVersion=11
Found: ID 99e1e5bd7100 Name=NelonnPhone Model=Pixel 7 Platform=Android SystemVersion=13
You can then send
a file using
$ flowdrop-cli send f56648ba9f79 path/to/some/file.mp4
Resolving receiver ...
Resolved
Asking receiver to accept ...
Receiver accepted
file.mp4 100%[##########################] 4 GB/4 GB
Done
Receiving is much easier. Simply use the receive
command. FlowDrop will accept all incoming files automatically and put received files in the current or specified directory.
$ flowdrop-cli receive
- GNU/Linux (amd64) (arm64 cross-compile)
- macOS
- Windows
- libknotdeviceinfo (GNU GPL v3)
- libflowdrop (GNU GPL v3 with anti-commercial clause)
- libknotdnssd (GNU GPL v3)
- libvirtualtfa (MIT License)
- curl 8.2.1 (curl License)
- libhv 1.3.1 (BSD 3-Clause License)
- nlohmann_json 3.11.2 (MIT License)
- Ninja (Apache License 2.0)
- CMake (New BSD License)