Skip to content

mndw

Modular web UI for Keenetic/Netcraze routers

Runs on the router under Entware, next to the stock web interface. Extend it with plugins you write yourself.

What is mndw ​

mndw is a modular web UI that you install on your router as an Entware package. It runs alongside the stock web interface on its own port, and you sign in with the same router account.

Everything in mndw is a plugin: a widget tile on the dashboard or a whole page. Plugins read and change router settings through the router's API. A plugin can also bring a backend (a shell script or a Go program) that runs on the router.

mndw has two parts: the UI in your browser and mndwd, a small daemon on the router that serves the UI and plugins and runs plugin backends.

Install ​

You need Entware installed on the router. In its shell:

sh
opkg update && opkg install wget-ssl ca-bundle && wget -qO- https://eralde.github.io/mndw-opkg-feed/add_repo.sh | sh

The script adds the mndw package feed for your router's architecture and installs mndw. When it finishes, it prints the dashboard address. Full install guide →

Build your own plugin ​

  1. Set up a project: Node.js 22+ and the mndw CLI
  2. Hello Widget: your first plugin, from scaffold to upload ZIP
  3. Device name: read and change a router setting through RCI

Guides · CLI commands · SDK API

Built from the mndw repository documentation.