Distributed, encrypted communication. No central servers or APIs. No accounts. No compromise.
When I started working on Hollow back in February, I didn't think how large this project would become. It all began with a random thought during school about having a fully peer-to-peer messenger where you're in control of all your data. Then I started planning, researching, locking in the tech stack, and grinding more than full-time to build it.
You can look at the old commits. I tried libp2p that kept failing and then the layout has been rebuilt too. Claude was basically my development tool that always helped me. I might not be the best programmer, but I have engineering thinking and creativity to know what needs to be built and how. Every architecture decision was mine, I traced every bug/performance issue and then we fixed it together, but I'm the one who's in control of what I release. And I'm not planning to publish unusable software that works like total garbage.
As for Hollow, I made it open-source because I want people to have software they can trust, own a copy of, and run themselves. It should be accessible to every regular user who just wants to chat with their friends, with everything working out of the box and have actual privacy/security that's easily verifiable. This is the reason why I adopted modern E2EE protocols and built custom implementations to create the messenger I would want to use myself.
Hollow won't have paywalls. Ever. No matter how much money someone is willing to pay, Hollow will stay open for everybody. Contributors are welcome because we can come together on a single matter that is taken away from us every single day - privacy and ownership. You deserve it. Don't let anybody tell you otherwise.
Thank you for reading, and as always, let's strive for better software together.
-- AnonListen
Hollow is a fully distributed, end-to-end encrypted communication platform. There are no central servers that store your messages or files. Members of a server collectively host it. The relay is a zero-knowledge signaling pipe that forwards encrypted blobs between peers without any ability to read, modify, or store them.
Your identity is a cryptographic keypair. Zero registrations. One recovery phrase or export of your identity into .hollow file, and you own your account forever.
- End-to-end encrypted messaging -- Olm (Double Ratchet) for DMs, OpenMLS for servers. Forward secrecy by default
- Encrypted voice and video calls -- peer-to-peer WebRTC with SFrame (AES-128-GCM)
- Screen sharing -- with system audio capture (Windows), encrypted with the same SFrame pipeline
- File sharing -- encrypted peer-to-peer transfers with no size limits. Large files (>34 MB) use Hollow Share (hidden BitTorrent-like distribution)
- Distributed storage (Vault) -- erasure-coded encrypted shards distributed across server members. Files survive even when individual peers go offline
- Servers and channels -- create communities with text channels, voice channels, roles, and permissions. All state synchronized via CRDTs with no authoritative server. Optional: secure Twitch verification to limit members only to your followers/subs
- Custom relay support -- self-host your own relay for a fully isolated network. One
docker compose upand you're running - Cryptographic identity -- Ed25519 keypair from a BIP-39 mnemonic. No accounts, no passwords, no email or phone verification
- Full local data retention -- using the Archive tab, you can see all the messages saved in your local database that you can easily export
- Verifiable messages -- every message is Ed25519-signed. Exported conversations are cryptographically unforgeable
- Native TLS -- the relay handles TLS 1.3 directly (no Cloudflare, no reverse proxy). ~572,000 concurrent connections on a single $8/month VPS (see BENCHMARK.md)
| Platform | Link |
|---|---|
| Windows | Download latest release |
| macOS | In progress |
| Linux | Coming soon |
| Android | In progress |
| iOS | In progress |
| Web | Not planned |
| Layer | Technology |
|---|---|
| UI | Flutter (Dart) -- Windows, macOS, Linux, Android, iOS |
| Backend | Rust via flutter_rust_bridge FFI |
| DM Encryption | vodozemac (Olm / Double Ratchet) |
| Server Encryption | OpenMLS 0.8 |
| Media Encryption | SFrame (AES-128-GCM) |
| Voice/Video | WebRTC (peer-to-peer) |
| Local Storage | SQLCipher (encrypted SQLite) |
| Identity | Ed25519 (BIP-39 mnemonic) |
| Relay | uWebSockets C++ (13.4 KB/conn, native TLS) |
Hollow supports self-hosted relays for fully isolated networks, so only connected users in it can communicate between each other without the official network.
cd relay-uws
cp .env.example .env # set your domain, IP, TURN secret
cp turnserver.conf.example turnserver.conf
docker compose up -dIn the Hollow app, enter your relay domain during setup or in Settings. See relay-uws/README.md for full documentation.
- Whitepaper -- full protocol specification: cryptography, networking, threat model
- Privacy Policy -- what data exists, where, and what we can access (nothing)
- Terms of Use -- plain-language terms
- Relay Documentation -- relay architecture, benchmarks, deployment
- Mobile Port Plan -- Android/iOS build setup, OpenSSL cross-compilation, contributor guide
- Flutter SDK (stable channel)
- Rust toolchain (stable)
- flutter_rust_bridge_codegen v2.11.1
# Generate FFI bindings
flutter_rust_bridge_codegen generate --rust-input "crate::api" --rust-root "rust/hollow_core" --dart-output "lib/src/rust"
# Run on Windows (debug)
flutter run -d windows
# Build release
flutter build windowsContributions are welcome. See CONTRIBUTING.md for setup instructions, coding conventions, and how to submit a pull request.
- Report bugs and request features via Issues
- Read the Whitepaper for protocol-level context
- Report security vulnerabilities privately -- see SECURITY.md
Copyright (C) 2025-2026 Vitalii Rovinskyi (AnonListen)
The Hollow client and core library are licensed under the GNU Affero General Public License v3.0. The relay server (relay-uws/) is licensed under the MIT License.
For commercial use without AGPL obligations, a commercial license is available:
| AGPL-3.0 (free) | Commercial | |
|---|---|---|
| Personal and community use | Yes | -- |
| Modify and distribute | Yes (source must stay open) | Yes (proprietary OK) |
| Small business | -- | $1,000/year |
| Enterprise (SSO, SLA, custom) | -- | Contact us |
The Hollow name, logo, and branding are trademarks of AnonListen and are not covered by the open-source license.
Hollow is funded by the community, not by selling your data. Every support is appreciated!

