Skip to content

Repository files navigation

CleanX logo

If CleanX is useful to you, a ⭐ helps others find it.

CleanX LuCI Theme

A clean, modern, LuCI theme for OpenWrt with polished dark/light mode, responsive navigation and a useful router overview dashboard.

Build OpenWrt packages OpenWrt Packages Latest release Total downloads Licence


Preview

Overview dashboard

CleanX LuCI Theme dark and light overview dashboard

Channel analysis

CleanX LuCI Theme dark and light channel analysis page

Realtime graphs - Load

CleanX LuCI Theme dark and light realtime graphs load page

CleanX is designed to make LuCI feel cleaner, easier to read and more comfortable to use on desktop, tablet and mobile screens. It keeps the normal OpenWrt/LuCI workflow intact while improving the visual layout, spacing, cards, tables, buttons, forms and dashboard output.

Latest release

Download the newest .ipk or .apk package from the GitHub Releases page. The release badge and download counter update automatically from GitHub release metadata, so this section does not need to be edited after every build.

Use the package format that matches your router firmware:

Router firmware Recommended package
OpenWrt 23.05 / 24.10 and other OPKG-based builds .ipk
OpenWrt 25.x release or APK-based builds .apk
OpenWrt snapshot Snapshot .apk only when it matches your snapshot target

Highlights

  • Modern dark and light modes with a compact theme switcher.
  • Responsive sidebar with clean SVG icons and mobile drawer support.
  • Custom login page with matching CleanX styling.
  • Live router overview dashboard with WAN speed, traffic totals, CPU usage, RAM usage and uptime.
  • Improved LuCI cards, forms, tabs, buttons, tables, modals and CBI sections.
  • Cleaner status output for Overview, Network, Wireless, Firewall, System, Processes, Startup, Channel Analysis and Realtime Graphs pages.
  • Better handling for long labels, compact controls and crowded LuCI tables.
  • OpenWrt SDK based GitHub Actions workflow for .ipk and .apk package builds.

Compatibility

CleanX uses the current LuCI theme layout:

ucode/template/themes/cleanx/

The package is architecture-independent and is intended for modern OpenWrt/LuCI builds, including:

Target Package type
OpenWrt 23.05 / 24.10 and other OPKG-based builds .ipk
OpenWrt 25.x snapshots or APK-based builds .apk

Router firmware builds can differ between vendors and snapshots. Keep SSH access available when testing a new LuCI theme so you can recover quickly if the web UI cache or theme selection breaks.

Install from a release package

Download the latest package from the Releases page, then copy it to your router.

OPKG / .ipk builds

scp luci-theme-cleanx_*.ipk root@192.168.1.1:/tmp/
ssh root@192.168.1.1
opkg install /tmp/luci-theme-cleanx_*.ipk

APK / .apk builds

scp luci-theme-cleanx*.apk root@192.168.1.1:/tmp/
ssh root@192.168.1.1
apk add --allow-untrusted /tmp/luci-theme-cleanx*.apk

Apply CleanX in LuCI

uci set luci.main.mediaurlbase='/luci-static/cleanx'
uci commit luci
rm -rf /tmp/luci-indexcache /tmp/luci-modulecache
/etc/init.d/uhttpd restart

Then refresh LuCI in your browser.

Build packages with GitHub Actions

  1. Fork or upload this repository to GitHub.
  2. Open the Actions tab.
  3. Run Build CleanX OpenWrt packages.
  4. Download the generated package artifact.

The workflow uses the OpenWrt SDK and creates the matching package output for the selected build target.

CleanX also creates a GitHub pre-release after a successful OpenWrt SDK build from main, master or a manual workflow run. Each pre-release can include package files, build logs, build summaries, release notes and SHA256 checksums.

Stable releases should still be promoted manually after router testing.

See RELEASE_PROCESS.md for the full release process.

Local preview and QA mocks

After cloning or extracting the repository, open the preview pages directly in a browser:

preview/index.html
preview/qa-v043/index.html
preview/qa-v042/index.html
preview/qa-v031/index.html

Recovery if LuCI breaks

If the theme causes a layout issue or LuCI becomes unusable, SSH into the router and switch back to the default Bootstrap theme:

uci set luci.main.mediaurlbase='/luci-static/bootstrap'
uci commit luci
rm -rf /tmp/luci-indexcache /tmp/luci-modulecache
/etc/init.d/uhttpd restart

Remove the package if required:

opkg remove luci-theme-cleanx

For APK-based builds:

apk del luci-theme-cleanx

Development notes

When changing the theme, test both desktop and mobile layouts. LuCI pages can vary heavily depending on installed packages, so it is worth checking common areas such as:

  • Status overview
  • Network interfaces and devices
  • Wireless settings
  • Firewall zones and traffic rules
  • Channel analysis and realtime graphs
  • System administration pages
  • Startup, processes and scheduled tasks
  • Software and Package Manager modals

Author

Created and maintained by @ox1d3x3.

Project repository: ox1d3x3/cleanwrt-luci

Licence

CleanX is released under the Apache-2.0 Licence.

Releases

Packages

Contributors

Languages