Skip to content
Features

Built for security, not surveillance

Every feature in Citadel exists to protect your data and respect your autonomy. No tracking, no data mining, no compromises.

End-to-End Encryption

Your files are encrypted before they leave your device using AES-256-GCM. Only you hold the keys, so the server never sees your plaintext data.

  • Client-side encryption with AES-256-GCM
  • Argon2id key derivation
  • Zero-knowledge server architecture
  • Optional per-file or per-folder encryption

Self-Hosting

Run Citadel on your own infrastructure. Docker deployment, S3-compatible storage backends, PostgreSQL database. No vendor lock-in, ever.

  • Docker Compose deployment
  • S3-compatible storage (MinIO, AWS S3, etc.)
  • PostgreSQL 16 with row-level security
  • Full admin control over your instance

Cross-Platform Sync

Sync files between your machines. Native performance on desktop through Rust acceleration, with WASM support for the browser.

  • macOS desktop client, built on Tauri 2
  • Mobile deferred until after 1.0
  • Web browser access via WASM
  • Rabin chunking + zstd for efficient transfers

Open Source

Fully transparent codebase under the MIT license. Audit every line, fork it for your own use, or contribute back to the project.

  • MIT licensed, server and client
  • Publicly auditable on GitHub
  • Community contributions welcome
  • No proprietary server components

No Vendor Lock-In

Your data is stored in standard formats. Switch providers, migrate storage backends, or export everything at any time. No proprietary formats.

  • Standard file formats, no proprietary encoding
  • Pluggable storage backend architecture
  • Full data export at any time
  • No artificial switching costs

Native Performance

Critical paths like hashing and chunking are powered by Rust via N-API bindings on desktop and WASM in the browser. Rust is the only path, so every platform runs the same code.

  • Rust-accelerated BLAKE3 hashing
  • Native Rabin chunking algorithm
  • zstd compression via Rust
  • Byte-identical output, gated by checked-in conformance vectors

Our transparency promise

We will never add telemetry, analytics, or tracking to the server or client. We will never introduce proprietary components that gate core functionality. If we can't sustain the project through fair pricing and honest business practices, we would rather shut it down than compromise these principles.