A CLI tool for secure, cross-platform file transfers between any two computers using end-to-end encryption and a relay.
croc is a command-line file transfer tool that enables secure, cross-platform sending of files and folders between any two computers. It uses a relay server to facilitate transfers without requiring local server setup or port forwarding, and employs end-to-end encryption via PAKE to protect data in transit. The tool solves the problem of quickly and safely sharing files across different operating systems with minimal configuration.
Developers, system administrators, and technical users who need a reliable, secure, and easy-to-use method for transferring files between computers via the command line.
Developers choose croc for its combination of security, simplicity, and cross-platform compatibility, offering features like resumable transfers, self-hosted relay options, and no need for complex network setup, making it a versatile alternative to traditional file-sharing methods.
Easily and securely send things from one computer to another :crocodile: :package:
Uses PAKE for secure transfers, ensuring data is encrypted before leaving the sender's device and only decrypted by the recipient, as highlighted in the README's security features.
Works on Windows, Linux, and macOS with simple install commands like Homebrew or Scoop, eliminating the need for port forwarding or local servers.
Allows interrupted transfers to be resumed without restarting, saving time and bandwidth for large files, a key feature emphasized in the documentation.
Supports running custom relay servers with Docker or bare metal, giving users full control over their transfer infrastructure, as detailed in the self-host relay section.
On Linux and macOS, to prevent secret leakage (CVE-2023-43621), users must use environment variables or run 'croc --classic', adding complexity compared to the default behavior.
Relies on relay servers for NAT traversal, which can introduce latency and requires trust in the relay operator; self-hosting needs at least two open ports, adding setup burden.
Focuses solely on transferring files and folders, lacking built-in features for syncing, versioning, or cloud integration, which may limit use in more complex workflows.
"rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files
Fast, secure, efficient backup program
GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes.
JuiceFS is a distributed POSIX file system built on top of Redis and S3.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.