9.7 KiB
English | 简体中文
A modern OpenWrt LuCI theme built with Vite and Tailwind CSS.
🏔️ Pure | 🦢 Elegant | 📱 Responsive | 🌗 Dark/Light Mode | ⚙️ Settable
Features
- Modern: Modern, content-first UI design with a clean layout and elegant animations.
- Fast, silky navigation: On supported browsers, switching pages only updates the content instead of reloading the whole page, so moving between pages feels silky and seamless — and loads much faster, about 67% quicker per page switch at the median in our measurements (see the router doc). This no-reload page-switching took cues from luci-theme-footstrap.
- Mobile-friendly: Optimized for mobile interactions and display, supporting both smartphones and tablets.
- Theme Switcher: Built-in theme switcher with seamless switching between Auto (system), Light, and Dark modes.
- Command Palette (⌘K): Search and jump to any page from the header.
- Custom Background: Set your own wallpaper for the login page and the admin interface.
- Floating Toolbar: Clickable button icons for quick access to frequently used pages.
- Installable (PWA): Ships a web app manifest and app icons, so LuCI can be installed to your home screen and launched like a native app.
- Customizable: The luci-app-aurora-config plugin ships five built-in theme presets and lets you customize Light/Dark color tokens, the navigation layout (Mega Menu, Dropdown, Sidebar), layout density, typography, branding, page backgrounds, and the floating toolbar — plus a theme store to browse and share complete themes.
Preview
Compatibility
- OpenWrt: Requires OpenWrt 23.05.0 or later, as the theme uses ucode templates and LuCI JavaScript APIs.
- Browsers: Built with TailwindCSS v4. Compatible with the following modern browsers:
- Chrome/Edge 111+ (released March 2023)
- Safari 16.4+ (released March 2023)
- Firefox 128+ (released July 2024)
- Optional enhancement, not a requirement: same-document navigation (no full page reload between view pages) uses the Navigation API where available — Chrome/Edge 105+, Safari 26.2+, Firefox 147+. Browsers without it keep classic full-page navigation automatically, with no loss of function.
Installation
Run these commands on the router itself (e.g. over an SSH session).
Via the eamonxg package feed
wget -qO- https://openwrt.eamonxg.fun/install.sh | sh
That is the whole installation — the script adds the feed and installs whatever you tick from the list it shows. Upgrade later with the usual commands: apk update && apk upgrade luci-theme-aurora, or opkg update && opkg upgrade luci-theme-aurora. Details: openwrt.eamonxg.fun.
apk: if this package was previously installed from a downloaded
.apkfile, that pinned it in/etc/apk/worldandapk upgradewill silently do nothing — success reported, version unchanged. Runapk add luci-theme-auroraonce (the name, no path) to clear the pin. The script above already does this for you.
Via a GitHub release
OpenWrt 25.12+ and snapshots use apk; other versions use opkg:
Tip
: You can confirm your package manager by running
opkg --versionorapk --version. If it returns output (not "not found"), that's your package manager.
cd /tmp
# opkg
uclient-fetch -O luci-theme-aurora.ipk https://github.com/eamonxg/luci-theme-aurora/releases/latest/download/luci-theme-aurora_1.3.0-r20260830_all.ipk
opkg install luci-theme-aurora.ipk
# apk
uclient-fetch -O luci-theme-aurora.apk https://github.com/eamonxg/luci-theme-aurora/releases/latest/download/luci-theme-aurora-1.3.0-r20260830.apk
apk add --allow-untrusted luci-theme-aurora.apk
Build from source
Build the package yourself with the OpenWrt build system. Host prerequisites: Build system setup. The build writes the package to bin/packages/<arch>/base/ (e.g. bin/packages/x86_64/base/luci-theme-aurora_*_all.ipk); copy it to your router and install it as above.
Via the full source tree or SDK
Get set up — clone the full source tree:
# Full source tree — the openwrt-24.10 branch builds an .ipk, the main branch builds an .apk
git clone https://github.com/openwrt/openwrt.git
cd openwrt
git checkout openwrt-24.10
Or the prebuilt SDK (faster: skips building the toolchain). Grab the archive for your target from downloads.openwrt.org, which splits SDKs into Release and Snapshot builds — Release 24.10.x and earlier build .ipk; Release 25.12+ and Snapshot build .apk (filename, arch and compression vary by target):
wget <sdk-archive-url-from-downloads.openwrt.org>
tar -xf openwrt-sdk-*.tar.*
cd openwrt-sdk-*/
Then, from that directory:
# Add this package and install feeds (provides luci-base)
git clone https://github.com/eamonxg/luci-theme-aurora.git package/luci-theme-aurora
./scripts/feeds update -a
./scripts/feeds install -a
# Select the theme in menuconfig: LuCI → Themes → luci-theme-aurora
make menuconfig
# Skip these two lines with the SDK — it already ships a built toolchain
make tools/install -j$(nproc)
make toolchain/install -j$(nproc)
make package/luci-theme-aurora/compile -j$(nproc) V=s
Contributing
Aurora uses Vite and a modern front-end toolchain, and is experimenting with end-to-end AI integration across the full development workflow. See Development Documentation to get started. Suggestions and PRs are always welcome.
Thanks goes to these wonderful people:
eamonxg |
cjayacopra |
chillykidd |
License & Credits
Apache 2.0. Thanks to:
- luci-theme-bootstrap
- luci-theme-footstrap — a LuCI theme with its own client-side router. Aurora's same-document navigation borrows some of its ideas and implements them on the Navigation API instead — see the router doc
- Vite
- Tailwind CSS
- Tabler Icons — the interface icon set
- Claude Code
- Apple and Vercel — design inspiration




