croc
A cross-platform command line tool for sending files and folders between any two computers with end-to-end encryption, resumable transfers and no port forwarding.
- GitHub stars
- 40k
- Last commit
- yesterday
- Latest release
- v11.5.4
- Licence
- MIT
- Self-hosted
- Yes

croc is a command line tool for transferring files and folders between any two computers. The sender gets a short code phrase, the receiver types it in, and the data moves directly between them where possible, falling back to a relay when a direct connection is not available. It is written in Go and runs on Windows, Linux and macOS.
Transfers are end-to-end encrypted using a password-authenticated key exchange, so the relay cannot read your files. Other capabilities include sending multiple files at once, resuming transfers that were interrupted, IPv6-first networking with IPv4 fallback, and routing through a proxy such as Tor. You do not need to set up a local server or forward ports. A browser version at getcroc.com is compatible with the command line client, so you can send and receive between them without installing anything.
croc is MIT licensed and can be installed from a release download or the command line. The maintainer notes that the project relies on community sponsorship. It suits anyone who regularly needs to move files between machines without cloud storage or accounts.
Key features
- Code phrase pairing for transfers
- End-to-end encryption using PAKE
- Peer-to-peer with relay fallback
- Resumable transfers and multiple files
- No server setup or port forwarding
- Browser version compatible with the CLI
Pricing: Free and open source under the MIT license.



