Skip to content

AlectronoDev/ChatApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Encrypted Chat App

(Demo setup guide is contained in demo/DEMO.md)

A Discord-like chat application with end-to-end encryption. The server only ever stores ciphertext and public key material — message content is never readable by the server operator.

Architecture

apps/
  web/          React + TypeScript web client (coming later)
  desktop/      Tauri desktop shell wrapping the web UI (coming later)
services/
  api/          Rust HTTP + WebSocket API (axum + tokio)
crates/
  crypto_core/  All cryptographic operations — isolated here
  protocol/     Shared request/response/event schema types
infra/
  docker-compose.yml   Local dev infrastructure (PostgreSQL)
docs/           Threat model, protocol notes, architecture decisions

Prerequisites

Local development

# Start the database
docker compose -f infra/docker-compose.yml up -d

# Copy and edit env
cp .env.example .env

# Run the API
cargo run -p api

The health endpoint will be available at http://localhost:3000/health.

Workspace crates

Crate Description
api HTTP/WebSocket API service
protocol Shared typed API schemas (request/response/events)
crypto_core Cryptographic primitives — the only place for crypto

About

In development E2EE chat app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages