This is a Python-based, command-line implementation of bitchat, a secure, decentralized, peer-to-peer messaging app that works over Bluetooth mesh networks. This version is designed to be compatible with the original Swift application's protocol.
Original iOS Version by Jack: github.com/jackjackbits/bitchat
- Decentralized Communication: No internet or servers required.
- Peer-to-Peer: Connects directly with other bitchat users via Bluetooth LE.
- Secure: Implements the core cryptographic principles of the original app.
- Cross-Platform: Built with Python and
bleak, with the potential to run on Windows, macOS, and Linux.
-
Clone the repository:
git clone https://github.com/dearabhin/bitchat-cli.git cd bitchat-cli -
Install Python: Ensure you have Python 3.8+ installed on your system.
-
Install dependencies:
pip install -r requirements.txt
Run the application from your terminal:
python main.pyThe application will automatically start scanning for nearby bitchat peers.
/w: List all currently connected users./help: Show the list of available commands./m <nickname> <message>: (Coming Soon) Send a private message./j #channel: (Coming Soon) Join a channel./clear: Clear the screen.
This application uses the bleak library to handle Bluetooth Low Energy (BLE) communication, acting as a BLE central device to discover and connect to other bitchat peers. It re-implements the custom binary protocol and encryption schemes from the original Swift application to ensure compatibility.
We welcome contributions from everyone! Here’s how you can help.
- Fork the repository.
- Clone your fork:
git clone https://github.com/dearabhin/bitchat-cli.git - Install the dependencies:
pip install -r requirements.txt
- Create a new branch for your feature or fix.
- Write a clear commit message.
- Open a Pull Request with a detailed description of your changes.