All Projects → Antonito → Gfile

Antonito / Gfile

Licence: mit
Direct file transfer over WebRTC

Programming Languages

31211 projects - #10 most used programming language
3204 projects

Projects that are alternatives of or similar to Gfile

Easy P2P file transfer powered by WebRTC - inspired by Apple AirDrop
Stars: ✭ 5,222 (+773.24%)
Mutual labels:  file-sharing, webrtc, peer-to-peer
Real-time P2P messenger using go-ipfs pubsub. TUI. End-to-end encrypted texting & file-sharing. NAT traversal.
Stars: ✭ 84 (-85.95%)
Mutual labels:  peer-to-peer, file-sharing
Shareaza is a peer-to-peer client for Windows that allows you to download any file-type found on several popular P2P networks.
Stars: ✭ 103 (-82.78%)
Mutual labels:  peer-to-peer, file-sharing
A simple CLI client for peer-to-peer file or message sending. Written in Python
Stars: ✭ 35 (-94.15%)
Mutual labels:  peer-to-peer, file-sharing
A free, open source file sharing application, built on the peer-to-peer hypermedia protocol IPFS.
Stars: ✭ 131 (-78.09%)
Mutual labels:  file-sharing, peer-to-peer
Share, discover & download files in your network 💥
Stars: ✭ 162 (-72.91%)
Mutual labels:  file-sharing, peer-to-peer
🔗 zero-config peer-to-peer encrypted live folder syncing that respects your `.gitignore`
Stars: ✭ 284 (-52.51%)
Mutual labels:  peer-to-peer, file-sharing
Airdcpp Webclient
Communal peer-to-peer file sharing application for file servers/NAS devices
Stars: ✭ 106 (-82.27%)
Mutual labels:  file-sharing, peer-to-peer
Commandline tool for searching and downloading files in LAN network, without any central server
Stars: ✭ 268 (-55.18%)
Mutual labels:  file-sharing, peer-to-peer
Decentralized Video Chat
🚀 Zipcall- Acquired @ 250k users 🚀 Peer to peer browser video calling platform with unmatched video quality and latency.
Stars: ✭ 3,284 (+449.16%)
Mutual labels:  webrtc, peer-to-peer
C/C++ WebRTC Data Channels and Media Transport standalone library
Stars: ✭ 336 (-43.81%)
Mutual labels:  webrtc, peer-to-peer
Wave Share
Serverless, peer-to-peer, local file sharing through sound
Stars: ✭ 1,641 (+174.41%)
Mutual labels:  file-sharing, webrtc
Easiest group P2P File & Message transfer in browser with WebRTC 🔥. Cross-platform alternative to Apple's AirDrop, Xender, ShareIT with the same speed over LAN. No installation, just a website :)
Stars: ✭ 119 (-80.1%)
Mutual labels:  file-sharing, webrtc
Easily and securely send things from one computer to another 🐊 📦
Stars: ✭ 17,834 (+2882.27%)
Mutual labels:  file-sharing, peer-to-peer
A file transfer tool that can be used in the browser webrtc p2p
Stars: ✭ 117 (-80.43%)
Mutual labels:  file-sharing, webrtc
Python port of PeerJS client
Stars: ✭ 56 (-90.64%)
Mutual labels:  webrtc, peer-to-peer
Syncthing Macos
Frugal and native macOS Syncthing application bundle
Stars: ✭ 1,096 (+83.28%)
Mutual labels:  file-sharing, peer-to-peer
P2P file transfer utility
Stars: ✭ 88 (-85.28%)
Mutual labels:  file-sharing, peer-to-peer
[archived] effortless video-voice chat with realtime collaborative features. extensible using react components 🙌
Stars: ✭ 270 (-54.85%)
Mutual labels:  webrtc, peer-to-peer
Filedrop Web
📲 WebRTC file transfer - React/TypeScript front end.
Stars: ✭ 375 (-37.29%)
Mutual labels:  file-sharing, webrtc

Build Status Go Report Card Codacy Badge Coverage Status License: MIT Mentioned in Awesome Go


gfile is a WebRTC based file exchange software.

It allows to share a file directly between two computers, without the need of a third party.



This project is still in its early stage.

How does it work ?


The STUN server is only used to retrieve informations metadata (how to connect the two clients). The data you transfer with gfile does not transit through it.

More informations here



gfile send --file filename
  • Run the command
  • A base64 encoded SDP will appear, send it to the remote client
  • Follow the instructions to send the client's SDP to your process
  • The file transfer should start


# SDP being the base64 SDP gotten from the other client
echo "$SDP" | gfile receive -o filename
  • Pipe the other client's SDP to gfile
  • A base64 encoded SDP will appear, send it to the remote client
  • The file transfer should start


gfile is able to benchmark the network speed between 2 clients (1 master and 1 slave) with the bench command. For detailed instructions, see Sender and Receiver instructions.

This feature is still an experiment.

# Run as 'master'
gfile bench -m

# Run as 'slave'
echo "$SDP" |  gfile bench

Web Interface

A web interface is being developed via WebAssembly. It is currently not working.


In order to obtain a more verbose output, it is possible to define the logging level via the GFILE_LOG environment variable.

Example: export GFILE_LOG="TRACE" See function setupLogger in main.go for more information


Special thanks to Sean DuBois for his help with pion/webrtc and Yutaka Takeda for his work on pion/sctp

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].