A privacy-first, end-to-end encrypted messaging platform with file sharing and voice calls. Built with React, Capacitor, and Go.
- End-to-End Encryption: AES-GCM-256 for messages, ECDH P-256 for key exchange
- Local AI Assistant: Qwen3.5 0.8B model for smart compose, quick replies, and summarization
- Secure Vault MFA: Local TOTP-based 2FA to protect the on-device Secure Vault
- Multi-Device Support: Link multiple devices to a single account with automatic key synchronization
- Chat Synchronization: Effortlessly sync missed messages across your linked devices and peers
- Cross-Platform: Android, and Desktop (Electron)
- File Sharing: Encrypted chunked file transfer
- Voice & Video Calls: Real-time encrypted audio/video calls (WebRTC)
- Secure Vault: Local encrypted storage for passwords and sensitive files, protected by MFA
- Multi-Account: Switch between multiple Google accounts
- Backup & Restore: Encrypted local backup of all messages, vault files, and identity keys
- Zero Server Storage: Messages never stored on the server
- Setup Guide - Build and run instructions for all platforms
- Overview - What the app does, target users, and key features
- System Architecture - High-level architecture, components, and deployment
- Database Schema - SQLite tables, relationships, and ER diagrams
- WebSocket Protocol - Frame types and API specifications
- Folder Structure - Project organization and file purposes
- User Flows - End-to-end user journeys with flowcharts
- Features - Detailed feature breakdowns and data flows
- Security Documentation - Encryption protocols, threat model, and best practices
- Authentication - Google OAuth, session management, and multi-account
- Deployment Guide - Platform-specific builds, CI/CD, and production deployment
- Node.js 18+
- Go 1.21+
- Android Studio (for Android builds)
cd Client
npm install
cd electron
npm install
cd ..
npm run build
npm run electron:startcd Server
go run socket.goServer runs on port 9000
See the Deployment Guide for detailed platform-specific instructions.
- React 18 + TypeScript
- Ionic Framework - Cross-platform UI
- Capacitor - Native bridge
- Vite - Build tool
- Web Crypto API - Encryption
- @cantoo/capacitor-llama & Web Workers - Local AI Execution
- Go (Golang) - WebSocket relay server
- Gorilla WebSocket - WebSocket implementation
- SQLite - Local message database
- Capacitor Secure Storage - Keychain/Keystore for keys
- Encryption: ECDH P-256 + AES-GCM-256 (Messages), DTLS-SRTP (Calls)
- Authentication: Google OAuth 2.0 + TOTP Multi-Factor Authentication (MFA)
- Session Tokens: HMAC-signed with SHA-256
- Zero Knowledge: Server cannot decrypt messages
- Device-Bound Keys: Identity keys never leave the device
See Security Documentation for comprehensive details.
| Platform | Status | Build Instructions |
|---|---|---|
| Android | β Supported | Android Build |
| Desktop | β Supported (Electron) | Desktop Build |
| iOS | β Not implemented | - |
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3).
- You can: Use, modify, and distribute this software.
- You must: Open-source your modifications if you distribute the software or run it as a network service (e.g., a web server).
- You cannot: Sublicense or use it in closed-source proprietary software.
See the LICENSE file for details.
- No perfect forward secrecy (long-lived device-bound session keys)
- Cross-device sync is best-effort MANIFEST-based (use backup for guaranteed migration)
- Single relay server (no federation)
- Google OAuth dependency (no alternative auth methods)
For issues, questions, or feature requests, please open an issue on the repository.
- App Vault Tagging System & One Time Otp With google authenticator
- Add Users With QR Code
- Add Users With Bluetooth
- Add Users With NFC
- Custom Quick Response
Built with β€οΈ for privacy and security