Open source macOS dictation app that turns speech into text with on-device models and optional AI cleanup, a local alternative to Wispr Flow.
- Stars
- 36,661
- Forks
- 5,834
- Open issues
- 147
- Last commit
- 3 days ago
What is it?
bitchat is a peer-to-peer messaging app for iOS and macOS. It uses two transports: a Bluetooth Low Energy mesh that relays messages across nearby devices up to seven hops without any internet connection, and the Nostr protocol for reaching people over the internet through relays. Messages route over Bluetooth when a peer is nearby and fall back to Nostr otherwise.
The app requires no accounts, phone numbers or central servers. Live Bluetooth sessions are encrypted with the Noise Protocol. Internet chat includes location channels based on geohash areas, from city block to region, where each geohash area uses ephemeral keys. Private messages over Nostr use BitChat's own envelope format, which is not compatible with NIP-17, NIP-44 or NIP-59.
The project is released into the public domain under the Unlicense. It is built in Swift with Xcode and SwiftPM, and includes IRC-style commands such as /msg and /who.
Key features
- 01Offline messaging over a Bluetooth LE mesh with multi-hop relay up to seven hops.
- 02Internet messaging over Nostr relays when Bluetooth peers are not in range.
- 03Location channels organized by geohash area, from city block to region.
- 04Noise Protocol encryption for live Bluetooth sessions.
- 05Emergency wipe triggered by triple-tapping.
- 06IRC-style commands such as /msg and /who.
Use cases
- Messaging during protests, disasters or outages when mobile networks are down.
- Chatting with people nearby in a neighborhood or city through location channels.
- Trying a chat app that needs no account or phone number.
- Studying a Bluetooth mesh and Nostr-based messaging implementation in Swift.
Quick start
- 1
Install from the App Store or Play Store, or build from source you have verified
- 2
Open the Xcode project
open bitchat.xcodeproj - 3
Build the macOS app without signing
xcodebuild -project bitchat.xcodeproj -scheme "bitchat (macOS)" -configuration Debug CODE_SIGNING_ALLOWED=NO build
Things to know
- Building from source requires Xcode and an Apple development environment.
- Compiled builds from other sources cannot be verified, per the project's own guidance.
- Bluetooth mesh only reaches devices within multi-hop range, and nearby radios can observe a persistent device identifier.
Topics
FAQ
- What is bitchat?
- A decentralized chat app that works over Bluetooth mesh offline and over Nostr relays online, with no accounts or phone numbers. bitchat is a peer-to-peer messaging app for iOS and macOS. It uses two transports: a Bluetooth Low Energy mesh that relays messages across nearby devices up to seven hops without any internet connection, and the Nostr protocol for reaching people over the internet through relays. Messages route over Bluetooth when a peer is nearby and fall back to Nostr otherwise.
- Is bitchat free to use? What license does it have?
- bitchat is open source under the Unlicense license. Check the license terms before using it in commercial products.
- Is bitchat still maintained?
- Actively maintained. The last commit to bitchat was on Oct 18, 2026.
- What can I use bitchat for?
- Messaging during protests, disasters or outages when mobile networks are down. Chatting with people nearby in a neighborhood or city through location channels. Trying a chat app that needs no account or phone number. Studying a Bluetooth mesh and Nostr-based messaging implementation in Swift.
- How do I install bitchat?
- Install from the App Store or Play Store, or build from source you have verified Open the Xcode project: open bitchat.xcodeproj Build the macOS app without signing: xcodebuild -project bitchat.xcodeproj -scheme "bitchat (macOS)" -configuration Debug CODE_SIGNING_ALLOWED=NO build
- Where can I get bitchat?
- The source code and installation instructions are on GitHub: https://github.com/permissionlesstech/bitchat
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A native AI chat client for iPhone, iPad and Mac that connects to cloud, self-hosted and on-device models.
A native macOS app that merges Wi-Fi, battery and volume into one configurable status icon in the menu bar, Dock, or both.
A macOS and iOS document chat app that lets you upload files and ask questions, with all AI processing done on-device via Apple Foundation Models.
Turns an iPhone into a touchpad, air mouse and voice/text input remote for Windows, Mac and Linux computers over the home network.
Elegant HTTP networking library for Swift, built on URLSession, with chainable requests, encoding, uploads, downloads and response validation.