Open-source Bluetooth mesh chat app providing IRC-like group messaging over nearby devices without internet.
A decentralized peer-to-peer messaging app with dual transport architecture: local Bluetooth mesh networks for offline communication and internet-based Nostr protocol for global reach. No accounts, no phone numbers, no central servers. It's the side-groupchat. bitchat.free ๐ฒ App Store License This project is released into the public domain. See the LICENSE file for details. Features
Dual Transport Architecture: Bluetooth mesh for offline + Nostr protocol for internet-based messaging Location-Based Channels: Geographic chat rooms using geohash coordinates over global Nostr relays Intelligent Message Routing: Automatically chooses best transport (Bluetooth โ Nostr fallback) Decentralized Mesh Network: Automatic peer discovery and multi-hop message relay over Bluetooth LE Privacy First: No accounts, no phone numbers, no persistent identifiers Private Message End-to-End Encryption: Noise Protocol for mesh, NIP-17 for Nostr IRC-Style Commands: Familiar /slap, /msg, /who style interface Universal App: Native support for iOS and macOS Emergency Wipe: Triple-tap to instantly clear all data Performance Optimizations: LZ4 message compression, adaptive battery modes, and optimized networking
Technical Architecture BitChat uses a hybrid messaging architecture with two complementary transport layers: Bluetooth Mesh Network (Offline)
Local Communication: Direct peer-to-peer within Bluetooth range Multi-hop Relay: Messages route through nearby devices (max 7 hops) No Internet Required: Works completely offline in disaster scenarios Noise Protocol Encryption: End-to-end encryption with forward secrecy Binary Protocol: Compact packet format optimized for Bluetooth LE constraints Automatic Discovery: Peer discovery and connection management Adaptive Power: Battery-optimized duty cycling
Nostr Protocol (Internet)
Global Reach: Connect with users worldwide via internet relays Location Channels: Geographic chat rooms using geohash coordinates 290+ Relay Network: Distributed across