LuCI - OpenWrt Configuration Interface
This commits introduces an initial ucode based LuCI runtime. It supports JSON menu files as used by Lua based LuCI and the template, call, view and alias dispatch targets. It is able to render a basic LuCI installation without errors. An embedded Lua VM is lazily loaded when Lua based resources are encountered, such as `*.htm` templates or server side Lua call targets. When a template is requested, the ucode runtime first tries to render an `/usr/share/ucode/luci/template/${path}.uc` ucode template and falls back to rendering the corresponding `/usr/lib/lua/luci/view/${path}.htm` Lua template in case no suitable ucode replacement is found. This allows for gradual migration of existing Lua based tmeplates to ucode. Furthermore, a set of stripped down LuCI libraries is shipped in the `/usr/lib/lua/luci/ucodebridge/` directory. Those libraries provide compatibility shims for the current Lua API towards Lua templates and Lua based server side actions while utilizing the ucode request runtime state internally. Signed-off-by: Jo-Philipp Wich <jo@mein.io> |
||
---|---|---|
.github | ||
applications | ||
build | ||
collections | ||
contrib/package | ||
docs | ||
libs | ||
modules | ||
protocols | ||
themes | ||
.gitignore | ||
CONTRIBUTING.md | ||
jsdoc.conf.json | ||
LICENSE | ||
luci.mk | ||
NOTICE | ||
package.json | ||
README.md |
OpenWrt luci feed
Description
This is the OpenWrt "luci"-feed containing LuCI - OpenWrt Configuration Interface.
Usage
This feed is enabled by default. Your feeds.conf.default (or feeds.conf) should contain a line like:
src-git luci https://github.com/openwrt/luci.git
To install all its package definitions, run:
./scripts/feeds update luci
./scripts/feeds install -a -p luci
API Reference
You can browse the generated API documentation directly on Github.
Development
Documentation for developing and extending LuCI can be found in the Wiki
License
See LICENSE file.
Package Guidelines
See CONTRIBUTING.md file.