DropWire Docs
Everything you need to know about the DropWire CLI and TUI, all in one place.
Installation
Install the DropWire CLI on your machine to start sending and receiving files instantly from your terminal.
Windows
# Install via PowerShell
irm https://install.dropwire.dev/windows | iexUninstall (Windows)
irm https://install.dropwire.dev/windows-uninstall | iexmacOS / Linux
# Install via curl
curl -sSL https://install.dropwire.dev | sh
# Or with Cargo (build from source):
cargo install dropwireUninstall (macOS / Linux)
curl -sSL https://install.dropwire.dev/uninstall | shQuick Start
Sending a file is as simple as running one command. DropWire will automatically generate a memorable room code for the receiver.
Machine A (Sender)
dropwire send ./photo.jpg
# Output: Code: 7-guitar-revengeMachine B (Receiver)
dropwire receive 7-guitar-revenge
# File saved to ~/Downloads/Dropwire/dropwire send
Sends a file or directory over an encrypted P2P channel. When sending a directory, DropWire automatically respects .gitignore and .ignore files to skip build artifacts.
dropwire send <FILE_OR_DIR> [OPTIONS]Flags
| Flag | Type | Description |
|---|---|---|
| --code | String | Custom room code phrase (e.g. secret-code-123) |
| --streams | Number | Number of parallel TCP streams to multiplex |
| --relay | URL | Override the signaling relay server URL |
| --no-lan | Boolean | Skip local UDP peer discovery and force WAN routing via relay |
Examples
# Send a folder using 8 parallel streams
dropwire send ./project/ --streams 8
# Send with a custom code
dropwire send report.pdf --code top-secret
# Force relay (no LAN attempt)
dropwire send video.mp4 --no-landropwire receive
Connects to a sender using a room code phrase and downloads the payload.
dropwire receive <CODE> [OPTIONS]Flags
| Flag | Type | Description |
|---|---|---|
| --out | Path | Output directory destination |
| --relay | URL | Override the signaling relay server URL |
| --no-lan | Boolean | Skip local UDP peer discovery |
dropwire relay
Runs a self-hosted zero-knowledge signaling and TCP stream relay server for when LAN discovery isn't possible.
dropwire relay [OPTIONS]Flags
| Flag | Type | Description |
|---|---|---|
| --bind | IP:PORT | TCP stream server bind address |
| --ws-bind | IP:PORT | WebSocket signaling server address |
dropwire config
Manages persistent CLI configuration stored in your OS config directory.
dropwire config show
dropwire config set <KEY> <VALUE>Keys
| Flag | Type | Description |
|---|---|---|
| relay | URL | Default relay server |
| no_lan | Boolean | Always skip LAN discovery |
| download_dir | Path | Default download folder |
| parallel_streams | Number | Default stream count |
| chunk_size_kb | Number | Chunk size in KB |
LAN Discovery
DropWire always attempts to find peers locally before using the relay server to guarantee maximum possible speed.
Machine A (Sender) Machine B (Receiver)
│ │
├──── UDP Multicast Announce ────────►│
│ │
│◄─── TCP Direct Connection ─────────┤
│ │
└══════ Direct P2P (No Relay) ═══════┘Relay Fallback
If LAN discovery times out after 15 seconds (or fails due to a firewall), DropWire automatically cascades to the Relay server via TCP. You can force the relay immediately by passing --no-lan.
Resumable Transfers
When receiving, DropWire saves a .dwstate file tracking every received chunk with a BLAKE3 hash.
receive command in the same directory. DropWire will auto-detect the .dwstate file and resume downloading only the missing chunks!Installation
DropWire X is the gorgeous, interactive Terminal User Interface for DropWire.
Windows
# Install via PowerShell
irm https://install.dropwire.dev/tui/windows | iexUninstall (Windows)
irm https://install.dropwire.dev/tui/windows-uninstall | iexmacOS / Linux
# Install via curl
curl -sSL https://install.dropwire.dev/tui | sh
# Or build from source:
git clone https://github.com/VesperAkshay/dropwire.git
cd dropwire-tui
cargo build --releaseUninstall (macOS / Linux)
curl -sSL https://install.dropwire.dev/tui/uninstall | shLaunching
To start the TUI, simply run the command with no arguments.
dropwirex~/.config/dropwire/config.json and launches in the mode set by default_mode (default is the File Browser).Boot Animation
On launch, DropWire X plays a cinematic particle assembly intro:
- Hundreds of scattered Braille dots animate across the screen.
- Over 2.5 seconds, they assemble using cubic easing into the DROPWIRE X ASCII logo.
- At 2.5s the logo snaps into crisp, perfectly rendered text.
- Holds for 1 second then transitions into the File Browser.
File Browser
The main screen features a fast, dual-pane layout for navigating your local filesystem.
Sidebar (Places)
Quick shortcuts to Home, Desktop, Documents, Downloads, Pictures, Music, and Videos. On Windows, it automatically lists all detected drives (C:\, D:\, etc.).
Explorer (Files)
Directories are sorted first (📁), followed by files (📄). You can select multiple files using Space for batch sending.
Receive Input
Activated by pressing r from the File Browser.
- Large centered input field with an animated border.
- Animated Braille spinner shows the app is ready.
- Blinking block cursor (
█) in the input field.
Transfer Dashboard
Shown dynamically during both send and receive operations.
- Displays SENDING MODE (Gold) or RECEIVING MODE (Cyan) badge.
- Shows the generated room code phrase (e.g.
7-guitar-revenge). - Live
RatatuiGauge progress bar with completion percentage and speed (MB/s). - Verified bytes counter vs total bytes.
Config Editor
Activated by pressing c from the File Browser. Edits are auto-saved to disk.
| Flag | Type | Description |
|---|---|---|
| Relay URL | Text | Relay server address |
| Disable LAN | Toggle | Force WAN relay routing |
| Download Dir | Text | Where received files go |
| Default Mode | Cycle | Start in browser or receive mode |
| Parallel Streams | Number | TCP stream count (4–16) |
| Theme | Cycle | Color theme |
History Viewer
Activated by pressing h. Displays a scrollable log of all past transfers reading from history.json.
All Keybindings
| Screen | Keybind | Action |
|---|---|---|
| Global | q | Quit application |
| Global | Esc | Back / Cancel / Abort / Save & Exit |
| File Browser | ↑ / ↓ | Navigate in active pane |
| File Browser | ← / → | Focus left/right pane |
| File Browser | Tab | Toggle focus between sidebar and list |
| File Browser | Enter | Open directory / Jump to shortcut |
| File Browser | Space | Select / deselect file for batch transfer |
| File Browser | s / S | Send selected file(s) |
| File Browser | r / R | Open Receive Input screen |
| File Browser | h / H | Open History viewer |
| File Browser | c / C | Open Config editor |
| Receive Input | Enter | Submit code and start transfer |
| Config Editor | Enter | Edit text field / Toggle boolean / Cycle option |
Themes
Four built-in visual themes selectable from the Config Editor.
| Flag | Type | Description |
|---|---|---|
| cyberpunk | Primary: Gold | Neon noir terminal (Default) |
| matrix | Primary: Green | Hacker / The Matrix |
| nord | Primary: Arctic Blue | Clean, cool, minimal |
| monochrome | Primary: White | High-contrast grayscale |