Over the past months, I built thruflux to make moving large sets of files between arbitrary machines simpler and faster, without requiring SSH, servers, or port forwarding.
It’s a cross-platform CLI written in Go that uses direct peer-to-peer transfers over QUIC, with automatic NAT traversal and relay fallback when needed. A single sender can serve multiple receivers concurrently, and directory transfers are handled natively (no zipping).
I recently benchmarked it against scp, rsync, croc, and magic-wormhole to understand the tradeoffs more clearly. While it doesn’t always beat built-in infrastructure tools like scp/rsync in ideal conditions, it gets surprisingly close while solving a harder problem (zero-setup P2P), and transfer speeds shows much lower variance than single-stream TCP tools. Moreover, thruflux consistently outperformed comparable P2P CLI tools, particularly for multi-file transfers.
The project is open source and still evolving — happy to hear feedback, especially from people who move a lot of data around. My vision is to create a free, secure, fast mass file sharing CLI tool that is (hopefully and eventually) achieves throughputs close to infrastructure tools like scp/rsync, which many current p2p file transfer CLI tools out there fall short of. I've poured many thoughts into how to make this possible, and now I believe I have reached a point where I would like to invite some early users to try out the tool. For that matter, I'd really appreciate if anyone who needs some data moved try out my tool. Thanks!
Repo + benchmarks: https://github.com/samsungplay/Thruflux