File sharing · macOS · Windows · Android

Send files of any size, device to device.

Bifrost sends files over the internet straight from one device to another, end-to-end encrypted. Nothing is uploaded to a cloud, and an interrupted transfer picks up where it stopped.

Free and open source · No account · No size limit · 0 bytes stored on servers

Bifrost Overview: the active transfer with its chunk ring, the network globe and a live throughput graph Bifrost Overview in the light theme: the active transfer with its chunk ring, the network globe and a live throughput graph Transfers on Android with live speeds and a throughput graph Transfers on Android in the light theme
Bifrost on Android browsing a shared folder Bifrost on Android in the light theme, browsing a shared folder

This is the live app. Try Pause on the transfer, or click around.

01Privacy

Privacy you can check.

Anyone can write "private" on a landing page. Bifrost gives you a receipt for every file instead, kept on both devices, that says exactly how it travelled. Here is one, line by line.

scene-041-take-2.mov 18.2 GB from Dhaka-Edit-Bay, Oct 14 at 4:35 PM Direct
Route Direct, device to device The bytes went from one disk to the other. If a relay ever has to step in, the receipt says how much it carried, encrypted.
Encryption QUIC · TLS 1.3 The keys exist only on the two devices. Each device proves its identity with its own key on every connection.
Verified 18,637 blocks of 1 MiB Every block is checked with BLAKE3 as it arrives, then the whole file again before it gets its name.
Fingerprint 8c2d fb51 99af f2f1 a6f2 0abd Both devices record the same fingerprint, so either side can show the file arrived exactly as sent.
Safety words cedarlanternotterquartzviolet Five words both devices derive from their keys. Same words on both screens means nobody was in between.
Stored on servers 0 bytes No account, no upload, no copy. There is no Bifrost server to keep one.
On Berlin-Studio cedarlanternotterquartzviolet
On Dhaka-Edit-Bay cedarlanternotterquartzviolet

02Safety words

Five words rule out a middle-man.

When a new device asks for access, both screens show five words made from the two devices' keys. Read them to each other. If they match, the connection is between you two and no one else. If anyone tried to sit in the middle, the words would be different.

03How it works

Four steps, no uploads.

Each file travels once, from one disk to the other, and leaves a matching receipt on both devices.

  1. 01

    Share a folder

    Pick one folder on the device with the files. Nothing outside it can be listed, read or written.

  2. 02

    Invite a device

    Choose what it may do (download, upload or both) and send a 16-character code like K7QM-9XRT-4HWD-P2NA, a link or a QR code.

  3. 03

    Approve and compare

    You see the device's name, its access and the five safety words before it can browse anything.

  4. 04

    Every byte checked

    Each megabyte is hash-verified on arrival, and the whole file once more before it gets its name.

Interruptions cost seconds, not hours.

Progress is saved after every verified megabyte. A dropped connection, a pause, a closed laptop or a power cut loses at most the block in flight. Unfinished transfers start again when the app opens and retry as soon as the network is back.

  • Pause and resume any time
  • Survives app restarts and reboots
  • Stops if the sender changes the file mid-transfer, instead of mixing two versions
Transfers: speeds, what's left to receive and send, a live throughput graph with dropped, direct and paused markers, and the transfer list Transfers in the light theme, with a live throughput graph and the transfer list Transfers on Android with live speeds and a throughput graph Transfers on Android in the light theme

Each device gets its own access.

An invitation says what its device can do: download, upload, or both. Change any device's access later from the Send page; the others keep theirs. Invitations expire, can be limited to a number of devices, and can be revoked.

  • Devices that may upload can add files and whole folders
  • Uploads never overwrite: a taken name gets " (1)"
  • A device can delete only what it uploaded itself
Send page: a shared folder with three devices set to Both, Download and Upload, and its invitation codes Send page in the light theme: per-device access and invitation codes

Browse first, then choose.

The receiver sees the shared folder with names, sizes and dates, filters it, and downloads single files or whole folders to a place of its choosing. Big folders load as you scroll, so a directory with thousands of files stays quick.

  • Folder downloads keep their structure
  • Auto-sync pulls new files from a folder every minute
  • Auto-sync never deletes anything on your side
Remote folder browser with Upload folder and Upload files buttons, and files marked Yours Remote folder browser in the light theme Bifrost on Android browsing a shared folder Bifrost on Android in the light theme, browsing a shared folder

Your history stays home.

A month calendar shows what came in and went out each day. See who you trade the most data with, what kind of files they are, and how much ever went through a relay. All of it is worked out on your device from your own receipts.

  • Never uploaded, never synced
  • Kept for a year by default, or 90 days, 30 days, forever, or not at all
  • Keep sizes and receipts without file names if you prefer
History: received, sent and relayed totals, a month calendar with a bar per day, and totals per device and per file type History in the light theme: totals, a month calendar, and totals per device and per file type History calendar on Android History calendar on Android in the light theme

The same app on every device.

Send between a Mac, a Windows PC and an Android phone in any combination. On Mac and Windows, Bifrost starts when you sign in and keeps running in the menu bar or tray when you close the window. On Android, transfers keep running with the screen off and show their progress in a notification.

  • macOS 10.15+, Windows 10 and 11, Android 7.0+
  • Light and dark themes, like this page
  • Saves to Downloads/Bifrost by default
History calendar on Android History calendar on Android in the light theme
Transfers on Android with live speeds and a throughput graph Transfers on Android in the light theme
  • Auto-sync

    Turn it on for any folder you can download from. New files arrive in a local folder every minute, and as soon as the network is back.

  • Several connections

    On long, lossy direct paths the receiver opens up to 8 connections to one sender, and keeps only the ones that raise the speed.

  • Fast over distance

    QUIC with 12 parallel streams per file (up to 32) and an adaptive flow window keeps a high-latency link full.

  • Know who uses your folders

    A notice when another device downloads from or uploads to your folders, one per batch rather than one per file.

  • Your own relay

    The public relays are rate-limited. Point Bifrost at your own relay server in Settings for full speed when no direct path exists.

  • Light on the machine

    Files stream from disk in small blocks and are never loaded whole. The app runs at low CPU priority, with optional upload and download limits.

04Features Resume

01 / 06

05Security

Who sees what.

Two devices on the internet need a little help to find each other. Here is everything that help can see, and everything it can't.

Only your two devices

  • File names, folder listings and file contents
  • Who you share with, and your transfer history
  • Receipts, fingerprints and safety words
  • Invitation keys, stored only as hashes on the sender

The lookup and relay servers

  • Two device IDs and their IP addresses, so the devices can punch through routers
  • For a short code, an encrypted invitation it can't open, while the invitation is active
  • Encrypted packets it can't read, only when routers block a direct path (never, in Direct only mode)

Anyone else, including us

  • Nothing. There is no Bifrost account, server or analytics.
  • Invitations you controlRandom 128-bit keys that expire, can be limited to a number of devices, and can be revoked.
  • Short codes16 characters, stretched with Argon2id. They unlock an encrypted record, so the lookup service never sees the invitation.
  • Checked on every requestThe owner checks each request against that device's own access, so a change applies at once. Paths, symlinks and junctions that leave the folder are refused.
  • Direct first, never silentA direct path is always tried first. The route is shown live and every relayed byte is on the receipt. Direct only is one setting away.

06Compare

How it compares.

Capability Bifrost Cloud share links Chat and messaging apps
File size limitNoneUsually a few GBUsually 2 GB or less
Travels over the internetOnce, device to deviceTwice: upload, then downloadTwice, through their servers
Copy kept on a serverNeverUntil the link expiresOften
Resumes after a dropFrom the last verified megabyteSometimesRarely
Verifies every byteYes, block by blockVariesVaries
Both devices onlineRequiredNot requiredNot required

Bifrost trades the convenience of an always-on server for privacy and no size limits: the sender has to stay online while the receiver downloads.

07Download

Download Bifrost.

Latest release. Free, no account needed. New versions install over the old one and keep your devices and history.

Seeing a warning when you install?

Bifrost is new and not yet code-signed by a certificate authority, so your system may ask you to confirm.

  • macOS: open the disk image and drag Bifrost to Applications. If the first launch says the app is from an unidentified developer, right-click Bifrost, choose Open, then Open again.
  • Windows: if SmartScreen shows "Windows protected your PC", choose More info, then Run anyway.
  • Android: allow your browser or file manager to install apps when asked. If Play Protect warns, choose More details, then Install anyway. On first launch, allow All files access and notifications.

Every file in a release has a matching .sha256 checksum, so you can confirm it is genuine.

08Open source

Built in the open.

Bifrost is MIT licensed. The transfer engine is a Rust library on iroh, with end-to-end tests for pauses, crashes, corruption, source changes, uploads, permissions and auto-sync. The apps use Tauri with a React interface. Issues, ideas and pull requests are welcome.

# Build and run from source
  git clone https://github.com/MisbahKhan0009/Relayless
  cd Relayless && npm ci
  npm run tauri dev

  # The interface alone, with demo data
  npm run dev:ui

  # Engine tests: real transfers, pauses,
  # crashes, corruption, uploads
  cargo test -p relayless-core --release

09FAQ

Questions.

Do both devices have to be online?

Yes, while files move. If either one goes offline, the transfer waits and continues from where it stopped when both are back. It also starts again by itself when the app opens.

What if a direct connection is impossible?

Some networks, mobile data in particular, block direct paths. Bifrost tries direct first and, if none opens within about 5 seconds, continues through a public relay. The data stays end-to-end encrypted, so the relay can't read or keep it, and Bifrost moves to a direct path as soon as one opens. The receipt shows how much went through the relay. If you'd rather wait for a direct path, choose Direct only in Settings.

Why is a relayed transfer slow?

The free public relays are rate-limited, often to around 1 Mbit/s. Turning on UPnP or IPv6 on your router usually gives a direct path. You can also run your own relay and set it under Settings, Connection, Relay server. The relay guide walks through both.

Is there a size limit?

No. Files are streamed from disk in small blocks, so a 500 GB file uses the same memory as a 5 MB one. You need enough free space on the receiving side.

How fast is it?

As fast as the slower of the two connections allows, which is usually the sender's upload speed. Twelve parallel streams per file keep long-distance links full, and on lossy direct paths the receiver can add connections to the same sender while each one raises the speed.

Can the other person see my other files?

No. They can only reach the folder you shared, and only after you approve their device. A device allowed only to upload sees just what it added, like a drop box. You can change a device's access, stop sharing or remove a device at any time.

Can someone overwrite or delete my files?

No. Uploads go to a temporary file, are verified, then saved under a free name, so nothing existing is replaced. A device can delete only files it uploaded itself and that you haven't changed since.

Where is my transfer history stored?

Only in the app's database on your device. Nothing is synced or uploaded. You choose how long it is kept, can keep it without file names, and can clear it at any time in Settings.

What are safety words for?

They let two people confirm, out loud or over a call, that their devices are talking to each other directly. They are derived from both devices' keys, so a device in the middle would produce different words.

Does it run on Intel Macs, Linux or iPhone?

Releases include an Apple silicon build for macOS; an Intel Mac can build the app from source. Linux builds are on the roadmap. There is no iPhone or iPad app.

Does it cost anything?

No. Bifrost is free and open source. There is no account and no paid tier.