Install

Install HTTP (GUI and API) server

Http server is used as signaling server for establishing p2p connection and exchanging metadata.

Download and install shelved via package release page.

wget https://github.com/emiago/shelve/releases/latest/download/shelved_linux_amd64.tar.gz
sudo tar -xf shelved_linux_amd64.tar.gz
# Run server
./shelved

By default you will have http on :8000 and STUN on :3478 for faster finding paths. Warning!: This version service should be used only in local network There is no authentification! ;)

Install client

shelve is single static binary and therefore installation and running is easy.

Linux install:

wget https://github.com/emiago/shelve/releases/latest/download/shelve_linux_amd64.tar.gz
sudo tar -C /usr/bin -xf shelve_linux_amd64.tar.gz

Other platforms binaries you can find on release page

Web shelve

By default shelved serves clients on port 8000 that can be used as GUI explorer.
Just enter IP of your server in your browser. For example http://192.168.1.100:8000

Metadata

Server will not hold or store any data about files content. All file sharing will be done p2p. Metadata about client sharing is active as long client is connected to server.

Only metadata that server holds (In Memory) is:

  • Active shared files from client and stats about files like name, type, size, modified time.
  • Hostname and remote IP are used for identification.