Skip to content

Repository files navigation

Floe

Floe

Encrypted peer-to-peer file transfer for the browser, desktop, and command line

CLI release Desktop release Build status License Stars

Try Floe · Documentation · Desktop · CLI · Self-hosting · Contributing

About

Floe is an open-source peer-to-peer file transfer application built on WebRTC. Files stream directly between devices; the signaling server negotiates connections and never stores, inspects, or decrypts file data. When a direct path is blocked, an optional TURN relay bridges the transfer while the data stays end-to-end encrypted. The desktop app and the CLI contain no analytics or telemetry; the only things either sends are an optional, anonymous byte count that powers the public counter and an optional once-a-day update check against GitHub, and you can turn both off in any client. The floe.one website itself runs cookieless, aggregate analytics (including anonymous transfer outcomes) and error monitoring, detailed in the security and privacy docs.

Three clients share one wire protocol: the web app at floe.one, a Windows desktop app, and a Go CLI. Send from a browser tab and receive in the desktop app or the CLI, or any other combination, even across different networks.

For the design behind this, see how it works and the technical reference.

Quick start

Open floe.one, pick a file, and share the generated link or QR code with the receiver. No account or installation required.

The quickstart guide walks through sending and receiving your first file.

Desktop

Floe for Windows 10 and 11 (x64), currently in beta. The Microsoft Store build is signed by Microsoft and updates automatically.

Download from the Microsoft Store

Prefer a direct download? An installer and a portable build are on the download page. Setup details are in the desktop installation guide.

CLI

Send and receive from terminals, servers, and scripts.

brew install --cask jannskiee/tap/floe        # macOS
winget install jannskiee.floe                 # Windows
curl -fsSL https://floe.one/install.sh | sh   # Linux and other systems

Send with floe send photo.jpg, receive with floe receive olive-tiger-castle, and update in place with floe update.

Senders in the CLI and the desktop app produce both a short code and a browser link, so the receiver can join from any client. Other install channels, checksum verification, and PATH setup are covered in the CLI installation guide.

Self-hosting

Prefer your own infrastructure? Prebuilt images on ghcr.io bring up the full stack in two commands, with no clone and no toolchain:

curl -fsSLO https://raw.githubusercontent.com/jannskiee/floe/main/docker-compose.yml
docker compose up -d

All three clients can point at a self-hosted server. Configuration, deployment behind HTTPS, and the optional TURN relay are covered in SELF_HOSTING.md and the self-hosting docs.

Documentation

The documentation covers all three clients in depth, from your first transfer to a self-hosted deployment.

The FAQ answers the questions that come up most, from transfer limits to privacy, and the troubleshooting guide starts from the symptom when something will not connect. The changelog tracks every release across web, desktop, and CLI.

Contributing

Contributions are welcome. See CONTRIBUTING.md for setup instructions, environment variables, and the pull request process. If you encounter a bug or have a feature suggestion, please open an issue.

This project follows the Code of Conduct. To report a vulnerability, see SECURITY.md.

Support

Floe is free and open source. Contributions help cover the ongoing costs of backend infrastructure that keeps the service accessible to everyone. This includes the signaling server for WebRTC connection negotiation and room management, and the TURN relay service that provides encrypted relay for users behind strict firewalls or Carrier-Grade NAT.

GitHub Sponsors
Ko-fi

Acknowledgments

Floe is supported by open source sponsorship programs that donate the tools and infrastructure behind it:

Thank you to these programs for helping keep Floe sustainable as an independent open source project.

Monitored by Sentry Documentation by Mintlify Sponsored by Anthropic

License

MIT License, Copyright Jan Carlo Paredes. See LICENSE for details.

Open source. Built for everyone.

About

Encrypted P2P file transfer in the browser, on the desktop, and in the CLI. No accounts, no uploads, no file storage.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

202 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages