Best android open-source packages and libraries.

Sharup

Sharup is a peer-to-peer file sharing application for both web and mobile.
Updated 1 year ago

Sharup

Sharup is a peer-to-peer file sharing application for both web and mobile.

Sometimes, we need share files with a friend group or with devices that we can't be sure it's secure. We don't want to share any login info for cloud providers or connect our devices to others using cables.

To solve this problem, Sharup is a good option for us. It does not want to know your login, connect your devices and store your files. It matches you with other peers that you shared given code.

To achieve this, it uses WebRTC (Web Real-Time Communication) technology that developed by Google.

Structure

Server

This is a server application that developed with Express, SocketIO. This application are contains a Websocket connection to matches the peers by the code.

Web

This is a web application that developed with ReactJS, WebRTC, SocketIO. This application connects the Websocket and waits other peers to connect with the same code.

You can access the web application from sharup.kiyar.io.

Mobile

This is a mobile application that developed with React Native, WebRTC, SocketIO. This application connects the Websocket and waits other peers to connect with the same code.

You can install the mobile application from Releases.

Scenario

  • The web or mobile application connects websockets from server application.
  • The web or mobile application gives two option to create or join.
  • If the user select "create" option, the server application creates a random code and name for this user.
  • If the user select "join" option, the server application adds the user as a peer for requested code and assigns a random name.
  • When a client application is joined a room, the server application sends the client information to other peers.
  • When a client application received a new client, connects the peer over WebRTC by sending sdp and candidate. Then, creates a data channel to share files.
  • When a client application shared a file, the file is shared the other peers over WebRTC.

Screenshots

Web

Mobile

Happy Coding!