Voltar ao ranking

ShareDropio/sharedrop

JavaScriptsharedrop.io

Easy P2P file transfer powered by WebRTC - inspired by Apple AirDrop

webrtcpeer-to-peerfile-sharingemberember-clijavascript
Crescimento de estrelas
Estrelas
10.7k
Forks
865
Crescimento semanal
Issues
110
5k10k
mar. de 2014abr. de 2018jun. de 2022jul. de 2026
Artefatosnpmnpm install sharedrop
README
ShareDrop

ShareDrop is now LimeWire

Dear ShareDrop community, ShareDrop has been acquired by LimeWire, a leading file sharing platform with integrated AI tools. You can continue to share any files between devices, while benefitting from:

  • sharing files between devices in the same network
  • anonymous up- & downloads
  • end-to-end encryption
  • up to 40GB storage for free users
  • integrated AI tools for signed-up users

Visit sharedrop.io or limewire.com

The Github repository will stay as-is and you can still go ahead and download and run the classic ShareDrop on your own infrastructure.

ShareDrop Classic

ShareDrop is a web application inspired by Apple AirDrop service. It allows you to transfer files directly between devices, without having to upload them to any server first. It uses WebRTC for secure peer-to-peer file transfer and Firebase for presence management and WebRTC signaling.

ShareDrop allows you to send files to other devices in the same local network (i.e. devices with the same public IP address) without any configuration - simply open https://www.sharedrop.io on all devices and they will see each other. It also allows you to send files between networks - just click the + button in the top right corner of the page to create a room with a unique URL and share this URL with other people you want to send a file to. Once they open this page in a browser on their devices, you'll see each other's avatars.

The main difference between ShareDrop and AirDrop is that ShareDrop requires Internet connection to discover other devices, while AirDrop doesn't need one, as it creates ad-hoc wireless network between them. On the other hand, ShareDrop allows you to share files between mobile (Android and iOS) and desktop devices and even between networks.

Supported browsers

  • Chrome
  • Edge (Chromium based)
  • Firefox
  • Opera
  • Safari 13+

Local development

  1. Setup Firebase:
    1. Sign up for a Firebase account and create a database.
    2. Go to "Security Rules" tab, click "Load Rules" button and select firebase_rules.json file.
    3. Take note of your database URL and its secret, which can be found in "Secrets" tab.
  2. Run npm install -g ember-cli to install Ember CLI.
  3. Run yarn to install app dependencies.
  4. Run cp .env{.sample,} to create .env file. This file will be used by Foreman to set environment variables when running the app locally.
    • SECRET key is used to encrypt cookies and generate room name based on public IP address for / route. It can be any random string - you can generate one using e.g. date | md5sum
    • NEW_RELIC_* keys are only necessary in production
  5. Run yarn develop to start the app.

Deployment

Heroku

Create a new Heroku app:

heroku create <app-name>

and push the app to Heroku repo:

git push heroku master
Repositórios relacionados
RocketChat/Rocket.Chat

The Secure CommsOS™ for mission-critical operations

TypeScriptnpmOtherchatmeteor
rocket.chat
45.8k13.7k
webtorrent/webtorrent

⚡️ Streaming torrent client for the web

JavaScriptnpmMIT Licensewebtorrentbittorrent
webtorrent.io
31.3k2.9k
jitsi/jitsi-meet

Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.

TypeScriptnpmApache License 2.0webrtcsfu
jitsi.org/meet
29.6k8k
ossrs/srs

SRS is a simple, high-efficiency, real-time media server supporting RTMP, WebRTC, HLS, HTTP-FLV, HTTP-TS, SRT, MPEG-DASH, and GB28181, with codec support for H.264, H.265, AV1, VP9, AAC, Opus, and G.711.

C++MIT Licensertmplive-streaming
ossrs.io
29.1k5.7k
m1k1o/neko

A self hosted virtual browser that runs in docker and uses WebRTC.

GoGo ModulesApache License 2.0dockervirtual-browser
neko.m1k1o.net
21.6k1.5k
pavlobu/deskreen

Deskreen turns any device with a web browser into a secondary screen for your computer. ⭐️ Star to support our work!

TypeScriptnpmGNU Affero General Public License v3.0second-screenwifi
deskreen.com
21.2k1.2k
livekit/livekit

End-to-end realtime stack for connecting humans and AI

GoGo ModulesApache License 2.0golangwebrtc
docs.livekit.io
19.9k2.2k
SnapDrop/snapdrop

A Progressive Web App for local file sharing

JavaScriptnpmGNU General Public License v3.0webrtcpwa
snapdrop.net
19.7k1.9k
bluenviron/mediamtx

Ready-to-use Media-over-QUIC / SRT / WebRTC / RTSP / RTMP / LL-HLS / MPEG-TS / RTP live media server and media proxy that allows to read, publish, proxy, record and playback real-time video and audio streams.

GoGo ModulesMIT Licensertsprtp
mediamtx.org
19.6k2.3k
ZLMediaKit/ZLMediaKit

WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT/STUN/TURN server and client framework based on C++11

C++Otherrtsprtmp
docs.zlmediakit.com
17.3k4.1k
pion/webrtc

Pure Go implementation of the WebRTC API

GoGo ModulesMIT Licensegogolang
pion.ly
16.7k1.9k
AlexxIT/go2rtc

Ultimate camera streaming application

GoGo ModulesMIT Licenseffmpeghassio
go2rtc.org
13.5k1.2k