Skip to content
Chizy edited this page Apr 15, 2025 · 5 revisions

Welcome to the QuietDrop Wiki

QuietDrop

Welcome to the official wiki for QuietDrop, an end-to-end encrypted messaging application built in Rust. This wiki contains detailed documentation to help you use, understand, and contribute to QuietDrop.

Navigation

For Users

  • [Getting Started](Getting-Started) - How to install and use QuietDrop
  • [FAQ](FAQ) - Frequently asked questions
  • [Security Overview](Security-Model) - Understanding QuietDrop's security features
  • [Mobile Usage Guide](Mobile-Usage-Guide) - Using QuietDrop on mobile devices

For Developers

Project Overview

QuietDrop is an end-to-end encrypted messaging application built using Rust, with a cross-platform frontend using Tauri 2.0 and Yew. It provides a secure, private, and easy-to-use communication platform that works on desktop and mobile devices, leveraging Rust's memory safety and performance benefits. QuietDrop uses modern cryptographic libraries and protocols to ensure the confidentiality and integrity of messages exchanged between users.

Core Features

  • End-to-end encryption: Messages are encrypted on the sender's device and decrypted on the receiver's device
  • Cross-platform support: Available on desktop (Windows, macOS, Linux) and mobile (Android, iOS) with a unified codebase
  • Strong Authentication: Secure user authentication with Argon2id password hashing
  • Forward Secrecy: Protection of past communications even if keys are compromised
  • Group Chats: Support for encrypted group conversations (in development)
  • File Transfer: Encrypted file sharing between users (in development)

Technology Stack

  • Core: Pure Rust for business logic, encryption, and messaging
  • Frontend: Yew framework compiled to WebAssembly
  • Application Framework: Tauri 2.0 for cross-platform deployment
  • Encryption: Sodiumoxide (Rust wrapper for libsodium) for cryptographic operations
  • Database: SQLite with sqlx for persistent storage (in development)

Project Structure

QuietDrop uses a Rust workspace with multiple crates:

  • quietdrop-core: Core library with encryption and messaging functionality
  • quietdrop-cli: Command-line interface for server and client operations
  • quietdrop-tauri: Cross-platform application for desktop and mobile devices

Getting Started

Desktop Installation

  1. Download the latest release for your platform from the [Releases page](https://github.com/chizy7/QuietDrop/releases)
  2. Run the installer and follow the on-screen instructions
  3. Launch QuietDrop from your applications menu

Mobile Installation

  1. Download from Google Play Store (Android) or App Store (iOS) - Coming soon
  2. Alternatively, download the APK directly from the [Releases page](https://github.com/chizy7/QuietDrop/releases)
  3. Follow the installation prompts on your device

Command Line Usage

For advanced users, QuietDrop also provides a command-line interface:

# Run as server
quietdrop-cli server

# Run as client
quietdrop-cli client

Contributing

We welcome contributions to both the code and this wiki! Check out our [Contributing Guide](https://github.com/chizy7/QuietDrop/blob/master/CONTRIBUTING.md) to get started.

Building From Source

See our [Development Guide](Development-Guide) for detailed instructions on building QuietDrop from source code for various platforms.

License

QuietDrop is licensed under the [MIT License](https://github.com/chizy7/QuietDrop/blob/master/LICENSE).

Clone this wiki locally