Peer to Peer Filesharing
Report Bug or Request a Feature
Table of Contents
Sheer is a Peer-to-Peer filesharing command-line application. It utilizes WebRTC to establish a secure and direct connection between two users.
Install using Go install:
go install github.com/tylermeekel/sheer
After running Sheer at least once, sheerconfig.json
is created in the same folder as its executable file.
servers:
a list of ICEServers.
{
"servers": [
{
"urls": ["stun:stun.examplestunserver.com:1234"]
},
{
"urls": ["turn:turn.exampleturnserver.com:1234"],
"username": "username",
"credentials": "password",
"credentialtype": "password"
}
]
}
For true Peer-to-Peer connection, include only STUN servers in this config file. However, depending on the network of each peer, connection using STUN may not be possible and Sheer will not be able to form a connection without a TURN server.
For more information regarding STUN, TURN and the ICE framework, click here, or read the MDN pages on WebRTC protocols.
sheer [send|s] [filepath]
sheer [receive|r]
- Ability to send directories
- Helper server that makes copy-pasting easier
- Clean up code
See the open issues for a full list of proposed features (and known issues).
If you have a suggestion that would make this better, please fork the repo and create a pull request.
Distributed under the MIT License. See LICENSE
for more information.
Tyler Meekel - ty.meekel@gmail.com
Project Link: https://github.com/tylermeekel/sheer