v11.3.6 removes the usual ceremony from ad hoc transfers
croc addresses a familiar gap in 1-off file sharing: a file is too awkward for chat, too sensitive for a random upload service, and sitting on a machine that cannot accept an inbound connection. The sender runs croc send, receives a code phrase, and gives it to the recipient. The recipient enters that phrase with croc, and PAKE establishes the secret used for end-to-end encryption. There is no account, locally hosted server, or port forwarding in the normal transfer flow.
The project dates to 2017 and is now at v11.3.6. It sends several files or folders, resumes interrupted transfers, prefers IPv6 before falling back to IPv4, and supports proxies such as Tor. Peer-to-peer connectivity is backed by relay fallback. Windows, Linux, macOS, and the browser are listed as compatible endpoints, so 2 participants do not need matching operating systems or matching interfaces.
Our 56-test run passed without a failure
Our run used an unprivileged Debian container with 3 CPUs and 8 GB of RAM, installation succeeded in 68 seconds and installed 607 packages. The snapshot at commit 869aa33 contained 301 files, about 57,168 lines of source, and occupied 5.3 MB when checked out. These figures say nothing about transfer speed, network efficiency, or behavior under load, which we did not measure.
The build completed successfully in 130 seconds. go test finished in 36 seconds with 56 passing tests and 0 failures. We found 5 CI workflow files and a Dockerfile, but no separate tests directory. That layout does not imply missing tests because the command found and passed 56 of them. More importantly, a contributor is not starting from a broken baseline on the measured commit.
One version wrinkle needs attention: the README says a source build requires Go 1.27+, while the supplied measurement environment is labeled golang:1.24-bookworm. The recorded install and build succeeded, but the evidence does not explain that mismatch. Local builders should follow the current README requirement rather than read our container label as a promise of Go 1.24 compatibility. Prebuilt releases and system packages avoid the question.
Two connection paths make the transfer flow unusually complete
Many file-transfer utilities are simple only on a friendly LAN. croc combines 2 connection paths, direct peer connection and relay fallback, under the same command. Resume support means a large folder on an unreliable link is not an all-or-nothing bet. Browser compatibility reduces coordination cost because one participant can use getcroc.com without installing the CLI while remaining compatible with a command-line peer.
Stored mode adds a separate, opt-in pattern in v11.3.6. croc send --store uploads ordinary files as client-side encrypted ciphertext and returns a browser link plus a CLI token. Documented defaults are a 1-day lifetime and 1 successful receiver, with configurable limits subject to server policy. The decryption key follows the URL's #, so HTTP requests do not send it to the storage service. The complete link remains a bearer secret, and a sender with the locally saved receipt can revoke an available transfer.
The README gives more than 10 installation choices across downloadable releases, Homebrew, MacPorts, Scoop, Chocolatey, Nix, Linux distributions, Termux, Conda, Docker, and source. There is also curl https://getcroc.com | bash. That breadth helps mixed fleets, though security-conscious users should inspect an installer or prefer a trusted package route instead of piping remote content straight into a shell.
A 24-hour update check is one operational rough edge
End-to-end encryption does not make a 1-time code harmless. Anyone who obtains a live phrase can try to join the transfer, and anyone holding a complete stored-transfer link has the identifier and decryption key. Teams should move secrets through a separate trusted channel and treat revoke receipts as sensitive. croc simplifies key agreement; it does not provide employee identity, approval workflows, durable audit trails, or centralized retention policy.
The client performs a background release check at most once every 24 hours during send or receive. Failures are ignored, notices appear after the transfer, and --quiet suppresses them. That is restrained, but locked-down networks may care about any extra outbound request. The documented Docker wrapper mounts the current directory plus a configuration directory and limits container access to that tree, so users should inspect its 1-line shell function before adding it to a profile.
One open issue and a 1-day-old push signal active maintenance
The snapshot shows 40,194 stars, 1 open issue, a v11.3.6 release dated August 30, 2026, and a last push on September 1, 2026. Together, those are strong current-activity signals for a project created in 2017. The recent release and push matter more than popularity alone. The small issue count suggests a tidy tracker, but this data cannot establish response time, maintainer capacity, or security-report handling.
The README says the project's future depends on community support and asks for sponsorship. That is a sustainability warning, not proof of instability. With 5 CI workflows, an MIT license, a successful measured build, all 56 measured tests passing, and recent repository activity, croc looks mature. Organizations should still pin versions and validate upgrades because healthy upstream activity does not replace local change control.
It fits 1-to-1 delivery, not permanent shared storage
In a real stack, croc is the fast lane for deliberate person-to-person delivery: move a build artifact to a test machine, hand a folder to a collaborator, or cross operating-system boundaries without provisioning shared infrastructure. Its 2 modes cover simultaneous peers and delayed pickup. A self-hosted relay may appeal to operators seeking network control, although the provided README excerpt lacks enough deployment detail to judge that setup.
It should not replace object storage, document collaboration, backups, or managed data exchange. Those systems retain files, index content, attach identities, and support repeated access. croc optimizes the moment of transfer. For that job, the evidence is persuasive: v11.3.6 built cleanly on our box, 56 of 56 tests passed, and the documented workflow addresses connectivity and encryption without turning a 1-off handoff into an infrastructure project.