A comprehensive Android network diagnostics toolkit. Inspect, diagnose, and monitor your network from a single app — no ads, no tracking, fully open-source.
Download the latest APK from GitHub Releases.
- IP Info — Public IP address and geolocation lookup (IPinfo API)
- WHOIS — Domain and IP ownership information with reverse DNS
- Cell Tower — Serving cell metrics, neighboring cells, and signal strength
- Security Posture — Aggregate network security score with factor breakdown
- Ping — Latency and reachability testing with continuous mode
- DNS Lookup — Query A, AAAA, MX, TXT, and other DNS record types
- Traceroute — Trace the network path with hop geolocation visualization
- Speed Test — Measure download/upload speed and latency with sparkline history
- LAN Scan — Discover devices on your local network with MAC vendor lookup
- Devices — Persistent device inventory with custom names and Pro background watch that alerts when a new device joins a watched network
- mDNS Browser — Find Bonjour / .local services on the network
- Port Scanner — Scan for open TCP ports with risk severity badges
- WiFi Analyzer — View nearby networks, signal strength, and channel usage graph
- Wi-Fi Audit — Security audit on join with WPS / weak-cipher detection
- VPN Status — Tunnel state and leak check
- DNS Leak Test — Detect DNS queries escaping the configured resolver
- TLS Inspector — Inspect SSL/TLS certificates and cipher suites
- HTTP Tester — Send custom HTTP requests and inspect responses
- IP Calculator — Subnet calculator with CIDR notation, host ranges, and network class
- Wake-on-LAN — Send magic packets to wake network devices
- Endpoint Monitor — Track uptime and latency of HTTP endpoints
- Network Log — View connection history and network events
- History — Browse past scan results with search and filtering
- Home Screen Widget — Configurable Glance widget (4×1 / 4×2) with refresh and quick-launch chips
- JDK 17
- Android SDK with compileSdk 35
- Android Studio Ladybug or later (recommended)
# FOSS debug APK (no billing, Pro always on)
./gradlew assembleFossDebug
# Google Play debug APK (with billing)
./gradlew assembleGplayDebug
# Run all unit tests
./gradlew testFossDebugUnitTest
# Run tests for a specific module
./gradlew :feature:ping:testFossDebugUnitTestCreate a keystore and add these properties to local.properties:
release.storeFile=path/to/release.keystore
release.storePassword=your-store-password
release.keyAlias=your-key-alias
release.keyPassword=your-key-passwordOr set equivalent environment variables for CI: RELEASE_STORE_FILE, RELEASE_STORE_PASSWORD, RELEASE_KEY_ALIAS, RELEASE_KEY_PASSWORD.
./gradlew assembleReleaseMulti-module Gradle project with convention plugins:
app — Single Activity, navigation host, theme
feature/* — 24 self-contained feature modules
core/network — Connectivity monitoring, SSRF guard, result export
core/data — Room database, DAOs, Hilt data module
core/scan — LAN scan engines + device-inventory repository (shared by lanscan & devices)
core/billing — ProStatus interface (FOSS / Google Play flavors)
core/ui — Shared UI tokens (status colors, spacing)
core/oui — MAC address vendor lookup
widget — Glance home screen widget
build-logic/ — Convention plugins (Android, Compose, Hilt)
Each feature module follows: Screen.kt (Compose UI) + ViewModel.kt (StateFlow) + di/Module.kt (Hilt) + engine/ (domain logic).
Stack: Jetpack Compose, Material 3, Hilt, Room, Ktor (CIO), Navigation Compose, Glance, dnsjava, kotlinx-serialization.
NetLens does not collect, store, or transmit any personal data. See PRIVACY.md for the full privacy policy.
Copyright (C) 2026 Ventoux Advisory Co
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, version 3.
See LICENSE for the full text.

