Skip to content

Bitchat C++ is a cross-platform Bluetooth mesh chat application written in C++ with platform abstraction

License

Notifications You must be signed in to change notification settings

ivanfoong/bitchatz-cpp

 
 

Repository files navigation

Bitchat C++

Bitchat Logo

A cross-platform Bluetooth mesh chat application written in C++ with platform abstraction. Bitchat enables peer-to-peer messaging over Bluetooth Low Energy (BLE) without requiring internet connectivity or centralized servers.

Build

🚀 Quick Start

Bitchat is a cross-platform Bluetooth mesh chat application. Get started quickly with the Usage Guide or dive into the Development Guide for building from source.

💬 How It Works

Bitchat creates a decentralized mesh network where devices communicate directly via Bluetooth Low Energy:

  • Mesh Networking 🔗: Each device acts as both a sender and relay, forwarding messages to extend the network range
  • BLE Transport 📡: Uses Bluetooth Low Energy for device discovery and data transmission
  • Cryptographic Security 🔐: Ed25519 signatures ensure message authenticity and prevent tampering
  • Data Compression 📦: LZ4 compression reduces bandwidth usage and improves transmission speed
  • Channel-based Communication 💬: Users can join different channels for organized conversations

📖 Documentation

🔧 Key Features

  • Real-time Messaging ⚡: Instant message delivery to nearby devices
  • Channel Support 📢: Join different channels for organized conversations
  • Peer Discovery 🔍: Automatically discover and connect to nearby devices
  • Signal Strength 📶: Display RSSI values to gauge connection quality
  • Message History 📝: View recent messages in the current session
  • Mesh Relay 🔄: Messages are automatically relayed to extend network range
  • Security 🔐: Ed25519 signatures for message authenticity
  • Compression 📦: LZ4 compression for efficient data transmission

🤝 Contributing

We welcome contributions! Please see the Development Guide for details on:

  • Setting up your development environment
  • Code style guidelines
  • Adding new platform support
  • Testing and debugging

🔗 Original Projects

This C++ implementation is based on the original Bitchat projects:

📄 License

This project is released into the public domain. See the LICENSE file for details.

About

Bitchat C++ is a cross-platform Bluetooth mesh chat application written in C++ with platform abstraction

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 77.2%
  • CMake 14.2%
  • Objective-C++ 6.9%
  • Objective-C 1.4%
  • Makefile 0.3%