You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
Arsen Musayelyan 71a597d678
Fix gitignore
1 year ago
cmd/opensend Fix gitignore 1 year ago
internal Restructure project 1 year ago
.gitignore Fix gitignore 1 year ago
.gitm.toml Add .gitm.toml 1 year ago
LICENSE Add LICENSE (Apache-2.0) [skip ci] 2 years ago
Makefile Restructure project 1 year ago Clarify README and add dir type to it 2 years ago
go.mod Restructure project 1 year ago
go.sum Switch to using archiver package rather than manual tar 1 year ago
opensend.toml Clean up code and add config 2 years ago


Send files between systems quickly and securely



  • Use opensend -r to start the receiver


  • Use opensend -s -t <type> -d <data>
  • type can be
    • url
    • file
    • dir
  • data can be
    • A website URL
    • A file path
    • A directory path
  • Example: opensend -s -t url -d ""
  • Example: opensend -s -t file -d ~/file.txt
  • Example: opensend -s -t dir -d /home/user


  • This project uses go modules, so building is easy
  • First, go 1.14+ must be installed (use buster-backports on debian)
  • Then, run make inside the project's directory.
  • This will get the dependencies and compile all the files.


To install, simply follow the building instructions and then run

  • Linux: sudo make install
  • macOS: sudo make install-macos

Using on iOS

Opensend can run on iOS using the iSH app.

  • Install go using apk add go
  • Clone this repository
  • Run make
  • Use opensend as normal, but skip device discovery
    • Device discovery does not work properly in iSH due to Alpine Linux
    • When running receiver, add --skip-mdns
    • When running sender, add --send-to <IP>
    • This applies bidirectionally
  • Known issues
    • Opensend takes a while to become ready on iOS

Ports to whitelist

  • TCP 9797 for key exchange
  • TCP 9898 for file transfer