🏆 Built at AOS Convergence · Oslo 2026
// Off-grid · Censorship-resistant · Signed

When they cut the internet,
the truth still gets out.

Breakout turns every phone into a relay. Snap a photo and it spreads device-to-device across a local mesh, hunting for any way out to the open internet. The moment it finds one, it breaks containment and publishes to the world.

In the app

Watch the truth break out.

One phone offline. One phone with a way out. The truth, on the open internet.

  1. 01
    Phone one with no internet types /escape into Bitchat. The signed Nostr event is released to the local Bluetooth mesh.

    Phone one is in the blackout

    No internet. The user types /escape and the signed event is released into the local Bluetooth mesh — neighbours' phones pick it up and carry it.

  2. 02
    Phone two is hops away with internet. It receives the signed event over the mesh and publishes it to Nostr relays.

    Phone two is hops away with internet

    The bundle reaches a peer that has a way out — Starlink, foreign SIM, embassy Wi-Fi, anything. That phone uploads the photo and publishes the signed event to Nostr automatically.

  3. 03
    Anyone on Nostr — anywhere on Earth — can now read the signed escape event from inside the blackout.

    The world reads it on Nostr

    Anyone on Nostr — anywhere on Earth — can now see the signed message from inside the blackout, with cryptographic proof of who sent it.

The mechanism

Store. Carry. Forward. Escape.

A delay-tolerant mesh that behaves like a contagion — content replicates from phone to phone and pushes relentlessly toward an exit.

  1. Compose

    You type a slash command in the Bitchat input

    Use /escape — optionally with text, an image, or both.

  2. Sign

    A Nostr event is built & signed locally on your device

    A kind 1 event tagged #breakout, signed with your secp256k1 key.

  3. Envelope

    Wrapped in a self-describing payload

    Packet carries the signed event plus pre-signed Blossom upload authorizations.

  4. Broadcast

    Pushed to every Bluetooth peer at max TTL

    Bitchat's existing mesh dedupes and re-broadcasts it to every nearby phone.

  5. Verify

    Every receiving phone re-checks the math

    Each peer revalidates the hash, signature, and upload authorizations before relaying.

  6. Escape

    The first connected peer breaks containment

    Image is PUT to Blossom; the signed event is published to Nostr relays.

  7. Receipt

    The mesh learns it got out

    Relay-OK acknowledgements flow back through the mesh as system messages.

Fork
Built on

Breakout is a fork of Bitchat

Bitchat is a brilliant, peer-to-peer, Bluetooth mesh messenger by permissionlesstech. We didn't reinvent the mesh — Bitchat already solved that. Breakout is a small but powerful addition on top: a single new slash command (/escape) that lets any signed Nostr event — text or image — hitch a ride on Bitchat's existing store-and-forward network, then break out to the open internet the moment a connected peer is reached.

Our intent is to contribute this feature upstream so every Bitchat user — on Android and iOS — can break a blackout the moment they install the app. Until then, you can grab the forked build and try it today.

Built for hostile environments

Designed to be unstoppable

📸

Image evidence capture

Snap a photo straight from the app. It's signed, chunked, and handed off to the mesh — no upload, no account, no internet required.

🛰️

Opportunistic egress

Content floods toward connectivity. One person with a satellite uplink can become an exit for an entire blacked-out region.

🔏

Verifiable provenance

Every bundle is signed (Ed25519). Relays can carry it but can't alter it — tampering instantly breaks the signature.

🌐

Decentralized publishing

Egress to Nostr relays and open media hosts — no single chokepoint to block, readable from anywhere in the world.

↩️

Delivery receipts

When your evidence reaches the world, a signed receipt travels back through the mesh so you know it made it out.

🕶️

Privacy first

No accounts, no phone numbers. Optional anonymity per post. Metadata you don't want to share never leaves your device.

Get it

Download Breakout

Early Android build is live. Grab it below, side-load, and start carrying the signal. iOS and F-Droid coming soon.

🤖 Android
APK · arm64-v8a · debug build
📦 F-Droid
Open-source build
Coming Soon
🦊 Source
GitLab repository
🍎 iOS
TestFlight
Coming Soon

Or scan to install on Android

Install on Android

Point your phone camera at the QR code to download the APK directly. Side-loading required — your device may ask you to allow installs from unknown sources.

Tap the button below to grab the APK. Side-loading required — your device may ask you to allow installs from unknown sources.

⬇  Download APK Android · arm64-v8a · debug
Questions

Frequently asked

Authoritarian regimes routinely cut the internet to hide what they're doing. Venezuela, Iran, Myanmar, Belarus, Ethiopia, Cuba — when protests start or elections are stolen, the connection goes dark and the world stops hearing from the people inside.

But the country is never completely dark. Somewhere in the mesh there's always a journalist with a satellite phone, a diplomat behind embassy Wi-Fi, a relative with Starlink, a hacker on a VPN over a foreign SIM. Breakout's job is to find that one gap. You snap a photo of what's happening on your block, hand it off to your neighbour's phone over Bluetooth, and it leapfrogs from device to device through the city until it lands on someone with a working uplink — who, without lifting a finger, broadcasts your signed evidence to the open internet on Nostr.

The regime can cut the cables, but they can't cut the people. As long as one phone in the chain has an exit, the truth gets out.

There isn't one — and that's the point. Breakout lives inside the existing Bitchat chat input. To escape something, type the slash command directly into the text box:

  • /escape your message here — signs and releases a text note to the mesh
  • /escape caption + tap the image icon — to attach a photo (caption optional)

If autocomplete is on, you'll see /escape listed alongside /join, /msg, and the other Bitchat commands. The system will reply "escape event signed and released to mesh" when it's away.

Bitchat already moves messages between phones over Bluetooth — beautifully. But until now, anything you said inside a blackout stayed inside the blackout. There was no bridge to the open internet.

Breakout adds that bridge. The new /escape command lets any signed Nostr event — text or photo — ride Bitchat's existing mesh until it reaches a peer with connectivity, who then publishes it to Nostr relays for the whole world to see. Same mesh, same UI, same protocol — just one extra command that turns Bitchat into an escape route.

Meshtastic is great — but it needs extra hardware. You have to buy a LoRa radio, charge it, carry it, and configure it. Breakout runs on the phone in your pocket. No radios, no antennas, no extra device — just an Android install and the Bluetooth and Wi-Fi every smartphone already has.

No. Just an Android phone. BLE and Wi-Fi are built into every modern smartphone. No LoRa radios, no antennas, no configuration.

Images are supported in the current build — capture a photo and Breakout signs, chunks, and pushes it into the mesh. Video sharing and bringing your existing Nostr identity (login with your npub) are next on the roadmap.

We designed traffic to blend in — randomized MAC addresses, no distinctive beacon signatures. But no tool is perfect. Read our threat model before using in high-risk situations.

It's published to Nostr relays — decentralized, globally replicated, not controlled by any single entity. You get a signed receipt back through the mesh confirming it's out.

Yes. The full source is on GitLab. We welcome security researchers to audit it — especially before relying on it in hostile environments.

On the way

What's next

Image sharing is live in the current build. Here's what's queued up next.

Just shipped · new in Bitchat Image sharing via /escape — capture a photo, sign it, push it into the mesh. We intend to contribute this feature upstream to Bitchat.
Soon

Video sharing

Larger bundles, smarter chunking, resumable hops. Record on the ground, hand it off through the mesh, and watch it surface on Nostr the moment the first device finds a gateway.

Soon

Login with your npub

Bring your existing Nostr identity. Sign bundles from your real account so anything you push out lands in your followers' feeds — verified, attributable, and yours.

Open source

Help break the blackout

$ git clone https://gitlab.com/soapbox-pub/blackout-breaker.git
Work in progress. Breakout is in active development and has not yet received an external security review. Do not rely on it for high-risk situations until it has been audited.