I've been working on an Android app for managing OpenWrt routers from a phone, and I wanted to share it here and get some feedback from the community.
LuCI works really well, especially on a desktop, but I've found that some quick tasks can be a little inconvenient from a phone—checking bandwidth, seeing connected devices, checking system resources, toggling guest Wi-Fi, etc.
So I built Yet Another LuCI App, an Android companion app built with Flutter and Material 3.
The app is 100% ad-free. There are no cloud servers or analytics tracking involved. Router communication happens directly between the app and the router using OpenWrt's RPC endpoints, and credentials remain stored on the device.
What it currently supports
Real-time system monitoring — CPU, RAM, Swap, disk usage, and live Rx/Tx bandwidth graphs.
Connected devices — Combines DHCP leases, ARP entries, and active wireless stations into a single view, including IPv4/IPv6 addresses, vendor information, and Wi-Fi band indicators.
Guest Wi-Fi — Create isolated guest networks and generate a Wi-Fi QR code for connecting devices.
Parental controls & profiles — Group devices into profiles with scheduled access and domain blocking.
OPKG + APK support — Automatically handles the traditional opkg package manager used by older OpenWrt releases and the newer apk package manager.
Services & VPNs — Manage procd services and monitor interfaces for WireGuard, OpenVPN, Tailscale, and ZeroTier. Root cron jobs can also be edited.
Sysupgrade backups — Validates backup archive headers and gzip data before uploading them to the router.
I also tried to make potentially powerfull operations a little harder to mess up:
Self-device protection — Detects the phone's active IP/MAC address to help prevent accidentally blocking the device you're currently using.
UCI rollback — If an RPC operation fails during a configuration change, the app attempts to revert the affected UCI changes.
Links
Google Play:
https://play.google.com/store/apps/details?id=com.nightcode.luci
GitHub:
https://github.com/nightcodex7/yala
I'm still actively working on it, so I'd particularly appreciate feedback from people who actually use OpenWrt.
If you try it, let me know what works, what doesn't, or which LuCI functionality you'd most like to see added.
PS: Update (September 2026) The licensing concern raised here has been fully addressed.
All 16 files from the original fork commit have been completely rewritten from scratch in a clean-room fashion — no GPL source code from luci-mobile remains in the codebase. The full remediation record, including what was rewritten and verification results, is documented in LICENSE_CHANGE.md.
Special thanks to cogwheel0 for the original luci-mobile concept and for raising this publicly — it pushed the project to be legally cleaner than it otherwise would have been.
PS: Update (v2.0.0 & Full GPLv3 Compliance)
I wanted to follow up here and address the concerns raised in the comments directly. I handled the initial licensing situation and my earlier responses poorly, and I apologize for that. Trying to debate license changes or claim rewrites instead of simply embracing GPL was the wrong move.
I took the community's feedback to heart and made things right:
**Proper GPLv3 Licensing & Attribution**: The project is now licensed 100% under GNU GPLv3 as a direct fork of `cogwheel0/luci-mobile`. Upstream credit and dual attribution to cogwheel0 have been properly set in the repository, LICENSE file, and README.
**Zero Paid Features / 100% Free**: To clear up some misunderstandings in the comments: the app has never had any paid features or paywalls, and it never will. Any optional donation links and payment endpoints have been completely removed from both the app and the codebase. There are no ads, no trackers, and no monetization whatsoever.
**Upstream Sync & v2.0.0 Release**: The codebase has been re-synced with upstream v1.2.1 alongside several fixes (resolved back-button app closing/black screen issues, fixed static DHCP lease deletion on OpenWrt RPC, restricted the UI palette strictly to Material You and Amber.
The project repository and community release are available on GitHub:
- Repository: https://github.com/nightcodex7/yala
- Release (v2.0.0): https://github.com/nightcodex7/yala/releases/tag/v2.0.0%2B220
Thanks to everyone who held me accountable and pointed me in the right direction.