A work-in-progress privacy-focused chat platform built in Rust. Community-hosted federated servers, end-to-end encryption, and zero surveillance — all on the roadmap.
FOSSil Chat is in early development. Here's what we're building toward — and what's already taking shape.
Extremely strong E2EE so only you and your recipients can read your messages. No backdoors, no compromises. Currently on the roadmap.
Run your own server. FOSSil Chat is designed around community-hosted servers — no single point of failure or control. Coming soon.
Express yourself with rich formatting. Share code, links, and formatted text naturally. Planned for a future release.
Built on Rust and Tokio for high-performance async networking. Fast, reliable message delivery with minimal overhead. Already in place.
Connect with users across different servers. A decentralised network where no single entity owns the conversation. On the roadmap.
A clean, modern interface built with egui and eframe. No clutter, no tracking — just chat. Under active development.
FOSSil Chat is organised into a clean workspace with three core crates: client, server, and shared libraries.
Modern, reliable, and performant technologies chosen with care.
Memory-safe systems language
Async runtime for Rust
Immediate-mode GUI
Network transport layer
FOSSil Chat is still in early development, but you can clone and build it today.
# Clone the repository git clone https://codeberg.org/FOSSil/FOSSil-Chat.git cd FOSSil-Chat # Run the server cd server cargo run # In another terminal, run the client cd client cargo run
FOSSil-Chat/ ├── client/ # Desktop chat client │ ├── src/ │ │ ├── main.rs │ │ ├── gui.rs │ │ └── network.rs │ └── Cargo.toml ├── server/ # Chat server │ ├── src/ │ │ ├── main.rs │ │ ├── tcp.rs │ │ ├── handler.rs │ │ └── server.rs │ └── Cargo.toml ├── fossil_shared/ # Shared protocol library │ └── src/ │ ├── lib.rs │ ├── packet.rs │ └── message.rs ├── Cargo.toml # Workspace manifest └── README.md