EdgeRay is a next-generation, high-performance, cross-platform VPN client and universal proxy core built completely in Rust. Utilizing the Tauri framework and Dioxus for its graphical interface, and an advanced custom network engine based on smoltcp, EdgeRay provides unparalleled censorship circumvention and network reliability.
Phase 7 / 7 Finalized: The architecture is 100% complete and compile-safe. We are now entering the Stability & Hardening phase.
We are currently seeking contributors to help EdgeRay reach its v1.0 Production Ready milestone. Key areas for contribution include:
- Security Audits: Protocol verification for
Flow-J. - Stress Testing: DPI-resistant performance benchmarks.
- Mobile Development: Finalizing Android/iOS native integrations.
- Documentation: Improving technical guides and translations.
See our Roadmap to v1.0 for more details.
- eBPF Handshake Mutilator: Kernel-level TLS ClientHello packet slicing using
ayato bypass DPI algorithms. - Flow-J Protocol: A proprietary, dynamically shifting polyglot protocol with three modes: Direct Stealth (REALITY), CDN Relay (xhttp), and IoT Camouflage (MQTT Steganography).
- Elastic FEC (Forward Error Correction): Reed-Solomon based parity packet injection to heal aggressively throttled UDP connections completely on the fly.
- P2P Decentralized Relays: NAT traversal and decentralized routing via BLAKE3 authentication for instances where direct outbound IPs are blackholed.
- Decoy Mimicry & REALITY: Advanced camouflage imitating standard TLS 1.3 browser handshakes, falling back to legitimate server content on unauthenticated probes.
- SIP003 Interoperability: Native plugin support to transparently proxy UDP over legacy TCP infrastructure.
- Brutal-QUIC Congestion Control: Custom congestion controller designed to maximize throughput over lossy and suppressed connections.
- Userspace TCP/IP Stack: Built on
smoltcpcombined with thetun-rscross-platform TUN interface, allowing true VPN encapsulation without OS-level kernel hooks, complete with legacy industrial device TCP mimicry. - Zero-Copy Execution: Utilizing
bytes, kernel-levelsplice(), and lock-free concurrency to forward packets with microsecond latency.
- Obsidian Design System: Gorgeous dark-mode, glassmorphic UI built in Dioxus and TailwindCSS.
- Direct-to-Display Scanout: Custom compositor bypass implementation to achieve zero-latency UI rendering on supported Linux managers.
- Live Telemetry Dashboard: Real-time routing visualization, connection health graphs, and network metrics driven by a self-healing gRPC UDS manager.
- Mobile-First Bindings: Full UniFFI code generation for seamless native integration into Android (Kotlin) and iOS (Swift).
- rustray: The headless engine (Rust). Handles the core transport logic, evasions, routing, and the gRPC control plane.
- edgeray-app: The Desktop client UI built with Tauri and Dioxus.
- rr-ui: Web-based panel and data models for managing EdgeRay and Xray-compatible cores on remote servers.
- shared-types: Shared protocol and configuration types limit overhead.
You need the development libraries for Tauri and Dioxus:
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libcairo2-dev libpango1.0-dev libatk1.0-dev \
libgdk-pixbuf2.0-dev libsoup-3.0-dev libjavascriptcoregtk-4.1-dev \
libwebkit2gtk-4.1-devNote: The application must be run with sudo (or as Administrator) to spin up the TUN interface.
sudo -E cargo tauri devBuilding mobile bindings requires the uniffi tool.
We welcome contributions from everyone! Whether you're a developer, a security researcher, or a technical writer, your help is invaluable.
- Contributing Guide: How to get started and set up your dev environment.
- Testing Guide: Our strategy for reaching 99.9% reliability.
- Security Policy: How to responsibly disclose vulnerabilities.
- Code of Conduct: Our commitment to a healthy community.
EdgeRay is licensed under the MIT License. See the LICENSE file for details.
Author: j-rad EdgeRay Team 2024-2026.
cargo install cargo-ndk
cargo ndk -t aarch64-linux-android -t armv7-linux-androideabi -t x86_64-linux-android -o ../gen/android/jniLibs build --releaseGenerate Kotlin FFI bindings using UniFFI:
cargo run -p edgeray-core --bin uniffi-bindgen generate --library target/debug/libedgeray_core.so --language kotlin --out-dir gen/android