Haven

Project Url: GlassOnTin/Haven
Introduction: Free SSH, VNC, RDP & SFTP client for Android
More: Author   ReportBugs   
Tags:

Haven icon

Haven

Free SSH, VNC, RDP, SFTP & cloud storage client for Android

"Haven is an interesting vibe coding experiment. Let's see what comes out of it." — DBP

Release F-Droid Build License Android 8.0+ Downloads Ko-fi

GitHub ReleasesF-Droid


         


  • Terminal — Mosh / Eternal Terminal / SSH with tmux-aware session restore, configurable keyboard toolbar, OSC 52/8/9/777/7/133 integration.
  • Desktop — VNC (RFB 3.8 with VeNCrypt), RDP (via IronRDP), a native Wayland compositor (labwc on GLES2), and one-tap local X11 desktop via PRoot.
  • Files — Unified browser for SFTP/SCP, SMB, and 60+ cloud providers. Multi-select, built-in editor, image tools, chmod, cross-filesystem copy/move.
  • Media — Transcode and stream on-device with FFmpeg 8.0; HLS streaming to the LAN; DLNA server for cloud media.
  • Keys — On-device Ed25519/RSA/ECDSA generation, FIDO2/SK hardware keys (NFC + USB), deploy-key helper.
  • Connections — Host-key TOFU, port forwarding (-L/-R/-D/-J), SOCKS/HTTP proxies, Tor, ProxyJump.
  • Local shell — Alpine Linux via PRoot (no root, any Android 8+ device).
  • Reticulum — rnsh over Reticulum mesh networks, pure Kotlin.
  • Security — Biometric lock, no telemetry, encrypted backup/restore (AES-256-GCM).

See docs/FEATURES.md for the full, detailed feature list.

Languages

Available in 11 languages: English, Chinese (simplified), Spanish, Hindi, Arabic (with RTL support), Portuguese, Bengali, Russian, Japanese, French, and German. The UI follows the device language. Community translation contributions welcome.

Install

Channel
GitHub Releases Signed APK, all features
F-Droid Built from source, all features

Both builds are identical — SSH, Mosh, Eternal Terminal, VNC, RDP, SFTP, and Cloud Storage. IronRDP (Rust) is built from source via cargo-ndk. rclone (Go) is built from source via gomobile.

Build from source

Requires Rust with Android targets, cargo-ndk, Go 1.26+, and gomobile:

# Rust (for RDP)
rustup target add aarch64-linux-android x86_64-linux-android
cargo install cargo-ndk

# Go (for rclone cloud storage)
go install golang.org/x/mobile/cmd/gomobile@latest
go install golang.org/x/mobile/cmd/gobind@latest

git clone --recurse-submodules https://github.com/GlassOnTin/Haven.git
cd Haven
./gradlew assembleDebug

Output: app/build/outputs/apk/debug/haven-*-debug.apk

Documentation

Third-party libraries

Library Purpose License
rclone Cloud storage engine (60+ providers) MIT
IronRDP RDP protocol (Rust/UniFFI) MIT / Apache-2.0
JSch SSH/SFTP protocol BSD
smbj SMB/CIFS protocol Apache-2.0
ConnectBot termlib Terminal emulator Apache-2.0
reticulum-kt Reticulum mesh network transport (Kotlin) MIT
rnsh-kt Reticulum remote shell client (Kotlin) MIT
FFmpeg Media conversion and streaming LGPL-2.1 / GPL-2.0
PRoot Local Linux shell (userspace chroot) GPL-2.0
labwc Wayland compositor (native desktop) GPL-2.0
wlroots Wayland compositor library MIT
virglrenderer GPU virtualization (OpenGL passthrough to PRoot apps) MIT
Jetpack Compose UI toolkit Apache-2.0

License

AGPLv3

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools