Skip to content

Latest commit

 

History

History
41 lines (30 loc) · 1.43 KB

README.md

File metadata and controls

41 lines (30 loc) · 1.43 KB

Description:

A simple CLI to share files over the local network.
This project uses Socket Programming concepts to implement a peer to peer connection to transfer files.
There is no server involved.
The Project involves usage of broadcasting for peer discovery and usage of TCP to send the file as a binary stream.
Two TCP handshakes are performed, one to send all the filenames involved, the other to send the binary data.

Languages and Frameworks

  • Language Used: Python
  • Libraries Used:
    • Socket: A library in Python to create web sockets.
    • Threading: Library in Python which helps in creation of threads.
    • Time: Python library to access time.

Usage:

  • Clone the project into your system:

    
      $git clone https://github.com/mana-sg/ShareItClone
    
    
  • Jump into the git repository.

    
      $cd ShareItClone
    
    
  • Run the main.py file:

    
      $python3 main.py
    
    
  • Now that the code is running, you can select whether you want to receive or send files.

  • If you select receive, you have to wait until the sender connects to your connection.

  • If you selected send, you will see a window with all the peer names, select the peer which you want to send the file to.

  • Once you select the peer, a file dialog will open up, select the file which you want to send.

  • The file will be sent successfully.