Skip to main content
floe send
Starts a transfer session as the sender. Floe registers a short code with the signaling server, prints a sharing panel, then waits for a peer to connect. Once connected, it streams all files over an encrypted WebRTC data channel.

Examples

Send a single file:
Terminal
Send multiple files at once:
Terminal
Send an entire folder (transferred recursively):
Terminal

Output

After running floe send, Floe shows a summary of what will be sent, then prints a sharing panel:
Output
Once the recipient connects, Floe negotiates the WebRTC connection and streams each file with a live progress bar:
Output
While a file is still in flight its line also carries elapsed and remaining time, for example [1/3] report.pdf 85% [██████████░░░░░] (1.4 MB/s) [6s:1s]. Those brackets disappear once the line reaches 100%. The bar stretches to the width of your terminal, so the number of blocks varies with your window, and names longer than 30 characters are truncated. The rate in parentheses uses base-1000 units (kB, MB), while the summary rows below it use base-1024 units, so the two do not always agree to the decimal. Share the code with CLI recipients or the link with browser recipients. The short code is valid for 10 minutes. The room link stays active until the session ends or you press Ctrl+C.

Folder transfers

When you send a folder, Floe walks it recursively and preserves the directory structure on the receiving end. The recipient gets the same relative paths inside their output directory.
Terminal
A trailing slash changes this. Floe names each file relative to the folder’s parent, and a trailing slash makes the folder itself the parent, so the folder name drops out and its contents land directly in the receiver’s output directory:
Terminal
The same applies to a trailing backslash on Windows. Shell tab-completion often adds one, so drop it if you want the folder name preserved.

Flags

See Flags Reference for --server, --no-relay, --web, and --iface.

Notes

  • Relayed transfers are capped at 2 GB per session; direct connections have no size limit. When the selected route runs through the TURN relay and the queued files total more than 2 GB, floe send blocks the transfer before any file data moves. See The 2 GB Relay Limit.
  • Press Ctrl+C at any time to cancel the transfer and close the session.
  • If the short code cannot be registered (for example, the signaling server is unreachable), Floe prints a warning and continues with the link only.
  • Files are streamed in the order they are listed. For multiple files, progress is shown per file.
  • The sender never reports to the global transfer counter. Only the receiver does. To opt out on the receiving side, the receiver uses --no-report or sets FLOE_NO_STATS=1.