Nearby Sharing
Send files to your other devices on the same Wi-Fi, straight from one to the other. No app, no account, nothing uploaded.
Looking for your other devices…
How it works
Open this page on two devices on the same Wi-Fi, a phone and a laptop for example. They find each other and each shows the other in its list. Choose a device, pick files, and the person there sees who is sending, the file names and the sizes, and presses Accept or Decline. Nothing is sent before they accept.
The file goes straight from one device to the other, over an encrypted connection between the two browsers (WebRTC). Our server only introduces the two devices: it sees a random name like "Blue Otter", whether it is a phone, a tablet or a computer, and the few short messages the browsers trade to open the connection. It never sees the file, its name or its size.
How it knows which devices are nearby
Devices that reach the internet through the same router share one public address, and the page groups them by it. The address is used for that and nothing else: it is never shown to anyone, never stored, and forgotten when you close the page.
Because of that, a few situations need the code instead:
- A phone on mobile data next to a laptop on Wi-Fi are on two networks.
- Some homes give the phone and the laptop different kinds of address (IPv6 and IPv4), so they land in two groups.
Open Pair with a code, show the code on one device and type it on the other. They see each other until you close the page.
When it cannot connect
Guest Wi-Fi, hotel Wi-Fi and some office networks deliberately keep devices from reaching each other. Then the two devices see each other in the list but the transfer cannot start, and the page says so. There is no relay through our server, on purpose: a relay would carry your files through a machine that is not yours, and it costs money with every gigabyte.
Limits
- An iPhone or iPad receives at most 200 MB at a time. Safari holds the whole file in memory until you save it, and past that it tends to close the tab.
- Other devices are limited by their memory. Send very large files a few at a time.
- The receiving device saves each file when it arrives; on a phone you may be asked where.
Strangers
On a shared connection, a café, a university, or a mobile network where many people share one address, other people with this page open can appear in your list. They see only your random name and the kind of device, and nothing can reach you unless you press Accept. If a name you do not recognise sends you something, decline it.
For machines
window.AONearby.peers() -> Promise<{id, name, device, paired}[]> — The devices this page can see now: others on the same network with this page open, and any paired by code. name is random; device is phone, tablet or computer.window.AONearby.send(peerId, files: File[]) -> Promise<{sent: boolean, reason?: string}> — Offer files to one device. The person there accepts or declines first; the bytes then go straight between the two devices.
A machine-readable description lives at index.md.