Skip to content

nixsh5/Pyp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pyp 🚀

Pyp is a lightweight, terminal-based peer-to-peer (P2P) file transfer tool written in Go. It uses WebRTC to allow high-speed data transfers between devices, even when they are behind different networks (like transferring files from India to the USA) without needing a middleman server to hold your data.

✨ Features

  • Real-time Speed Monitoring: Live upload/download speed tracking displayed in MB/s.
  • True P2P: Data flows directly between peers using WebRTC data channels.
  • Terminal UI: A beautiful, responsive TUI built with Bubble Tea 🧋 and Lipgloss.
  • Cross-Platform: Single-binary support for Linux and Windows (amd64).
  • Automatic Downloads: Received files are automatically saved to your Downloads folder.

📥 Installation

You can download the pre-compiled binaries from the Releases page.

🐧 Linux (Ubuntu, Arch, Fedora, etc.)

To use the pyp command anywhere in your terminal, follow these steps:

  1. Download the pyp binary.
  2. Open your terminal in the downloads folder and run:
# Make it executable and move it to your system path
chmod +x pyp
sudo mv pyp /usr/local/bin/pyp
  1. Now you can simply type pyp from any directory!

🪟 Windows

  1. Download pyp.exe.
  2. Move it to a permanent folder (e.g., C:\Program Files\pyp\).
  3. Add that folder to your System Environment Variables (PATH).
  4. Open a new PowerShell or Command Prompt and type pyp.

🛠️ Usage

1. Sender

  • Run pyp and select SEND.
  • Use arrows to navigate and Space to select files.
  • Press Enter to generate a 7-digit room code.
  • Share the code with the receiver.

2. Receiver

  • Run pyp and select RECEIVE.
  • Enter the 7-digit code provided by the sender.
  • The transfer will begin automatically, showing a progress bar and live speed.

🏗️ Tech Stack

  • Language: Go (1.25.6+)
  • TUI Framework: Bubble Tea
  • Networking: Pion WebRTC
  • Signaling: Hosted on Render (WebSockets)

📄 License

This project is licensed under the MIT License.


Alt text

Made with ❤️‍🔥 by Nish Deshmukh

About

Lightweight, terminal based P2P file transfer tool

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors