Skip to content

Guide · Open source

How to use ShareDrop: send files between devices in a browser

Updated · written with AI from the project's own documentation and checked against our catalogue data

ShareDrop is a web app that sends files directly between devices in your browser, using WebRTC, so files are not uploaded to a server first. This guide explains how to send files on the same network or through a room link, what the project's README says about its current status, and how to run the classic version yourself. By the end you will know which setup fits your devices and what the self-hosted route requires.

ShareDropShareDropio/sharedrop · ★ 10.8k · MIT

Quick start

  1. 1Open ShareDrop. Open https://www.sharedrop.io on each device you want to use. Devices on the same network appear automatically.
  2. 2Create a room for other networks. Click the + button in the top right corner to create a room with a unique URL, then share that URL with the recipients.
  3. 3Send your file. Once you see the other device or avatar, choose it and send the file. Transfers go directly between devices.
  4. 4Set up Firebase to self-host. Create a Firebase account and database, load firebase_rules.json in the Security Rules tab, and note the database URL and secret.
  5. 5Install dependencies. Run npm install -g ember-cli, then yarn, in the project folder.
  6. 6Create the environment file and start. Run cp .env{.sample,}, set SECRET to a random string, then run yarn develop.

Know which version of ShareDrop you are using

The README states that ShareDrop has been acquired by LimeWire. The hosted service at sharedrop.io now carries LimeWire features such as anonymous up- and downloads, end-to-end encryption, up to 40GB storage for free users and AI tools for signed-up users.

The GitHub repository stays as it is, and the README says you can still download and run the classic ShareDrop on your own infrastructure. The README says the newer LimeWire features belong to LimeWire, not to this repository.

Send files to devices on the same network

ShareDrop needs no configuration for devices on the same local network, meaning devices with the same public IP address. Open https://www.sharedrop.io on each device and they will see each other. Pick a device and choose the file to send.

  • Open the page on every device you want to use.
  • Wait for the devices to appear on the page.
  • Select the other device and send your file.

To send files between networks, click the + button in the top right corner of the page. This creates a room with a unique URL. Share that URL with the people you want to send files to.

When they open the page in a browser on their devices, you will see each other's avatars. Then you can send files to them.

Understand how ShareDrop differs from AirDrop

ShareDrop requires an internet connection to discover other devices. AirDrop does not need one, because it creates an ad-hoc wireless network between devices. If you need transfers with no internet at all, ShareDrop is not the right tool.

ShareDrop works across mobile (Android and iOS) and desktop devices, and it can send files between networks. The README lists Chrome, Edge (Chromium based), Firefox, Opera and Safari 13+ as supported browsers.

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

Run ShareDrop Classic locally

Running the classic version requires a Firebase account, because the app uses Firebase for presence management and WebRTC signaling. The README lists the prerequisites as Node.js, Yarn, Ember CLI (installed via npm) and a Firebase account. Follow these steps in order.

  • Set up Firebase: sign up, create a database, go to the Security Rules tab, click Load Rules and select firebase_rules.json. Note your database URL and its secret from the Secrets tab.
  • Install Ember CLI with npm.
  • Install app dependencies with yarn.
  • Create the environment file by copying the sample.
  • Start the app with yarn develop.
npm install -g ember-cli yarn cp .env{.sample,} yarn develop

Configure the .env file

The .env file sets environment variables for the app when it runs locally, through Foreman. The SECRET key encrypts cookies and generates the room name based on the public IP address for the / route. It can be any random string. The README suggests generating one with a command such as date | md5sum.

The NEW_RELIC_* keys are only needed in production.

  • SECRET: any random string, used for cookies and room names
  • NEW_RELIC_*: only necessary in production
date | md5sum

Deploy to Heroku (optional)

The README includes a Heroku deployment path. Create a Heroku app with the command below, then push the app to the Heroku repository.

heroku create <app-name> git push heroku master

What people use it for

  • Moving photos or documents from an Android phone to a desktop in the same room or Wi-Fi network
  • Sending a file to someone on another network by sharing a room link
  • Running a classic AirDrop-style sharing tool on your own infrastructure
  • Studying a real-world WebRTC and Ember.js project as a developer

Frequently asked questions

Is ShareDrop free?

The repository is MIT licensed, so you can use and run the code under that licence. The README describes LimeWire storage and feature tiers for the hosted service at sharedrop.io, but it does not list prices, so check that site for current terms.

Does ShareDrop work without internet?

No. The README says ShareDrop requires an internet connection to discover other devices, unlike AirDrop, which creates its own ad-hoc wireless network.

How do I install ShareDrop?

The project is installed by cloning and building. Install Node.js, Yarn and Ember CLI, set up a Firebase account, then run yarn and yarn develop after creating the .env file with cp .env{.sample,}.

Do I need a Firebase account to run ShareDrop Classic?

Yes. The README says local development depends on Firebase, which handles presence management and WebRTC signaling. You need a database, its security rules and its secret.

What devices and browsers does ShareDrop support?

The README lists Chrome, Edge (Chromium based), Firefox, Opera and Safari 13+. It says ShareDrop works between Android, iOS and desktop devices.

What are the alternatives to ShareDrop?

The project's comparable projects are Snapdrop, PairDrop, Send (Mozilla) and LocalSend. If you need transfers with no internet connection, the README points out that ShareDrop is not built for that, so consider LocalSend or AirDrop depending on your devices.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

ShareDrop suits people who want browser-based file transfers between phones and computers, and developers who want to self-host a classic AirDrop-style tool or study a WebRTC and Ember.js project. It is a poor fit if you need transfers with no internet connection, need the newer LimeWire features, or cannot set up a Firebase account.

Install options & downloads