Analysis updated 2026-05-18
Turn a rooted Android phone into a stable hotspot with a static gateway IP that survives restarts.
Route every device connected to the hotspot through a VPN like WireGuard without configuring each client.
Bridge an existing Wi-Fi network to new devices using repeater mode without extra hardware.
Run an OpenWrt container in Managed Mode to control networking and hotspot clients from one panel.
| ravindu644/virtualap | composablehorizons/material-3-compose-unstyled | lyosu/hortay-android | |
|---|---|---|---|
| Stars | 14 | 14 | 14 |
| Language | Kotlin | Kotlin | Kotlin |
| Setup difficulty | hard | moderate | hard |
| Complexity | 4/5 | 3/5 | 4/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires root access and a 64-bit ARM Android device running 8.0 or higher.
VirtualAP is a utility for rooted Android phones that turns the device into a proper wireless access point with routing capabilities well beyond what Android's built-in hotspot provides. It requires root access and runs only on 64-bit ARM hardware with Android 8.0 or higher. The main difference from a standard Android hotspot is control. VirtualAP assigns a static gateway IP address that stays the same across restarts, so port forwards, bookmarks, and SSH configurations pointing at connected clients do not break every time you toggle the hotspot. You also choose which network connection clients use as their upstream: mobile data, a Wi-Fi network your phone is already connected to, an Ethernet interface, or a VPN tunnel such as WireGuard. The VPN option lets you route every device connected to your hotspot through the VPN without configuring each one individually. Wi-Fi repeater mode lets your phone connect to an existing Wi-Fi network and share it as a hotspot at the same time, acting as a wireless bridge without extra hardware. The routing engine runs inside a small Alpine Linux environment packaged as a 4.4MB filesystem that gets extracted to /data/local/virtualap/ on first launch. The access point itself is managed by hostapd, DHCP and DNS by dnsmasq, and all traffic routing uses Android's existing ip and iptables tools rather than additional kernel modules. An advanced mode called Managed Mode hands the entire network layer to a running container, such as an OpenWrt instance from the companion Droidspaces project. In that configuration VirtualAP handles only the wireless hardware while the container takes over DHCP, DNS, NAT, and firewalling, allowing a single OpenWrt control panel to manage both Wi-Fi hotspot clients and containerized workloads simultaneously.
Turns a rooted Android phone into a full wireless access point with a static gateway IP, multiple upstream sources, and VPN routing.
Mainly Kotlin. The stack also includes Kotlin, Alpine Linux, hostapd.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.