P2P File Transfer · WebRTC · Across Any Network · Zero Cloud

Files, finally direct. Send files browser to browser, across any network.

Send files browser-to-browser with no upload, no signup, and no size limit. Free peer-to-peer file transfer over WebRTC, end-to-end encrypted, works across any network.

No file size limit True peer-to-peer Blazingly fast End-to-end encrypted No signup, no install Works across any network

The mechanism

Connect. Encrypt. Stream straight to disk.

A signaling server briefly helps the two browsers find each other. From that point on, every byte flows directly between them — encrypted end-to-end, never touching a server, never paused for an upload step.

FileTransferNow establishes a direct WebRTC connection between two browsers on different networks. The connection is end-to-end encrypted with DTLS. File chunks then stream directly peer-to-peer, never touching the signaling server.

The difference

WeTransfer, Smash, Dropbox. Then us.

Cloud tools make your file take a round trip through a server — first upload, then download. FileTransferNow skips the round trip entirely.

The old way

Upload, store, hope it works

  • File is uploaded to a server (then downloaded again)
  • 2GB / 5GB / 20GB size caps on the free tier
  • Server can read it, scan it, store it, lose it
  • Link expires in 3 / 7 / 30 days
With FileTransferNow

Direct. End of story.

  • File goes straight from your browser to theirs
  • No size limit — 10MB or 100GB, same flow
  • We physically can't see the file (E2E encrypted)
  • Resume after disconnect — no restart from zero

Built around one principle: your bytes are your business — and never anyone else's server's problem.

Works across any network

Different WiFi networks, different cities, different continents — doesn't matter. WebRTC + STUN/TURN traversal connects browsers behind home routers, mobile data, and corporate firewalls. This isn't AirDrop — it's true global P2P.

Zero uploads, zero servers

Files stream directly peer-to-peer over WebRTC data channels. No file ever touches our infrastructure. Our signaling server routes only the SDP handshake — not a single byte of your content.

Unlimited size

Send 10MB or 100GB — same flow, no upload step. Data streams directly to the receiver's local disk via the Origin Private File System, so RAM never bloats.

End-to-end encrypted

WebRTC transports are DTLS-encrypted by default. Keys negotiated browser-to-browser; even we can't decrypt the stream. Anyone tapping the network sees noise.

No signup, no install, no app

Open the page, generate a room, share the link. Receiver opens it, transfer starts. Nothing to download, no account to create — just a URL.

Resume after disconnect

WiFi dropped mid-transfer? Battery died? Tab refreshed? The receiver's partial file is persisted to disk and the sender re-streams only the missing bytes — never restart a 50GB transfer from byte 0 again.

Paranoid mode

Don't trust our signaling server? Use manual SDP exchange — copy/paste the handshake text over Signal, email, or carrier pigeon. Truly zero cloud, even for the handshake.

Greener by design

No upload to a server, no storage racks spinning to hold your file 'just in case'. A typical cloud round-trip burns ~5x the energy of a direct P2P hop. Sustainable by accident — because we just skip the cloud entirely.

How it works

Three steps. No server in the middle.

  1. 1. Generate a room. Open the app on any browser, any device, any network — get a one-time URL.
  2. 2. Share the link. Send it to the recipient any way you like — they can be next to you or on the other side of the planet.
  3. 3. Drop the file. A direct, end-to-end encrypted browser-to-browser stream begins instantly. Zero upload step.
Read the technical deep-dive →

Just sharing on the same WiFi? See local network mode — works faster than AirDrop, between any devices.

// Receiver side — direct write to local disk
peerConnection.ondatachannel = (event) => {
  event.channel.onmessage = async (e) => {
    await opfsWriteHandle.write({
      type: 'write',
      data: e.data,
      position: receivedBytes,
    });
  };
};

Stop uploading. Stop emailing. Just send.

Open FileTransferNow. Drop a file. Share the link. The other browser — anywhere in the world — pulls it down directly. Done in 10 seconds.

Send a file now →