apps

One Rust core. Two phones. Zero servers.

FLVSH ships as native iPhone and Android apps built on the same Rust protocol core, so any two phones in the room speak exactly the same language over the air.

BETA · TESTFLIGHT

FLVSH for iPhone

Native SwiftUI. CoreBluetooth underneath.

The full mesh messenger on iOS: discovery, encrypted chat, voice notes, and relay — running on the same Rust core as Android, so both platforms speak an identical protocol.

  • Dual-role BLE: advertises and scans simultaneously
  • Voice messages, recorded and encrypted on device
  • Read receipts and delivery states across mesh hops
  • Disappearing messages with per-chat timers
  • Local notifications when a message lands in the background
BETA · APK

FLVSH for Android

Jetpack Compose. The same wire protocol.

Byte-for-byte compatible with the iOS app: an iPhone and a Pixel discover each other, exchange keys, and message across the room — or across the crowd — with no infrastructure.

  • GATT server + client in one app, up to 7 simultaneous peers
  • MTU negotiation up to 517 bytes for fast fragment transfer
  • Mesh relay with TTL and deduplication
  • Offline queue drains automatically on reconnect
  • Blocklist enforced at the crypto layer
RUST CORE

FLVSH Core

One Rust library. Every platform.

Identity, encryption, the packet protocol, fragmentation, and storage live in a single Rust crate, exposed to Swift and Kotlin through generated bindings. The apps are thin shells over the same core.

  • PQXDH (X25519 + ML-KEM-768), Double Ratchet and ChaCha20-Poly1305 on well-established RustCrypto and dalek crates
  • Deterministic packet format shared by both apps
  • UniFFI-generated Swift and Kotlin bindings
  • SQLite storage engine with migration-safe schema
  • Tested fragmentation, reassembly, and dedup