Foundry
A self-hosted team chat platform in Rust - its own graph engine, git as the store, no database.
Foundry is a self-hosted team chat platform - organizations, channels, and real-time messaging - built in Rust on its own in-memory property-graph engine, with git as the durable store and no traditional database. Everything is event-sourced: an append-only log and periodic snapshots are committed and pushed to GitHub for offsite backup and restore-by-clone. Video, voice, and screen sharing run on an embedded pure-Rust WebRTC SFU, and the desktop app is a cross-platform Tauri v2 + React client.
In-Memory Graph Engine
A hand-built property-graph engine - labelled nodes, typed directed edges, id/label indexes, and a traversal API - is the authoritative runtime source of truth. No traditional database.
Git-Backed Event Store
Fully event-sourced: every mutation appends to an events.ndjson log the instant it happens, then snapshots are git-committed and pushed to GitHub for offsite backup - with restore-by-clone on a fresh boot.
Real-Time Messaging
Organizations, channels, users, and messages over WebSockets with per-org scoped delivery, plus content-addressed file attachments - images inline, other files as downloads.
Orgs & Access Control
Multi-org with admin settings, roles, ownership transfer, and invite codes; per-channel access by role/group, invisible channels, and request-to-join - all enforced server-side.
Embedded Rust SFU
Video, voice, and screen sharing over a pure-Rust WebRTC SFU (webrtc-rs) embedded in the binary, speaking the IETF WHIP/WHEP standard and forwarding RTP - it never transcodes.
Calls at Any Scope
Direct, group, and channel huddles with ring / accept / decline, simultaneous screen shares, ephemeral call tokens, coturn TURN credentials, and event-sourced call records.
Auth & Security
Argon2id password hashing, stateless HMAC-signed session tokens, GitHub OAuth device-flow backup, and optional TLS (HTTPS/WSS) with hot-reloading certificates.
Single-Port Deploy
Messaging, API, uploads, and call signaling all ride one port (the SFU mounts at /sfu); call media flows over a fixed, firewall-friendly UDP range.
Tauri Desktop Client
A cross-platform Tauri v2 + React + TypeScript app with a typed WebSocket client and runtime server config - one build targets any server; macOS, Windows, and Linux installers are built in CI.
Rich Link Previews
The sender resolves OpenGraph cards and inline YouTube / Vimeo / image embeds and shares them with the message; links open in the system browser.