whatisgithub

What is virtualap?

ravindu644/virtualap — explained in plain English

Analysis updated 2026-05-18

14KotlinAudience · developerComplexity · 4/5Setup · hard

In one sentence

Turns a rooted Android phone into a full wireless access point with a static gateway IP, multiple upstream sources, and VPN routing.

Mindmap

mindmap
  root((VirtualAP))
    What it does
      Wireless access point
      Static gateway IP
      Root required
    Tech stack
      Kotlin
      Alpine Linux
      hostapd
      dnsmasq
    Use cases
      VPN routing
      Wi-Fi repeater
      Managed Mode
    Audience
      Rooted phone owners
      Network tinkerers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Turn a rooted Android phone into a stable hotspot with a static gateway IP that survives restarts.

USE CASE 2

Route every device connected to the hotspot through a VPN like WireGuard without configuring each client.

USE CASE 3

Bridge an existing Wi-Fi network to new devices using repeater mode without extra hardware.

USE CASE 4

Run an OpenWrt container in Managed Mode to control networking and hotspot clients from one panel.

What is it built with?

KotlinAlpine LinuxhostapddnsmasqiptablesOpenWrt

How does it compare?

ravindu644/virtualapcomposablehorizons/material-3-compose-unstyledlyosu/hortay-android
Stars141414
LanguageKotlinKotlinKotlin
Setup difficultyhardmoderatehard
Complexity4/53/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires root access and a 64-bit ARM Android device running 8.0 or higher.

So what is it?

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.

Copy-paste prompts

Prompt 1
Explain how VirtualAP's static gateway IP setup differs from Android's built-in hotspot.
Prompt 2
Walk me through setting up VirtualAP to route hotspot traffic through a WireGuard VPN tunnel.
Prompt 3
Show me how to configure VirtualAP's Wi-Fi repeater mode to bridge my phone to an existing network.
Prompt 4
Help me set up VirtualAP's Managed Mode with an OpenWrt container for combined Wi-Fi and container networking.

Frequently asked questions

What is virtualap?

Turns a rooted Android phone into a full wireless access point with a static gateway IP, multiple upstream sources, and VPN routing.

What language is virtualap written in?

Mainly Kotlin. The stack also includes Kotlin, Alpine Linux, hostapd.

How hard is virtualap to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is virtualap for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.