LuCI is an open-source framework that is widely used to build web interfaces for embedded devices such as WiFi routers. In the CBI-based old system, pages were rendered on the router and delivered as HTML to the browser, which caused a higher load on the embedded devices. This makes the system less efficient and can lead to performance issues.
- luci-app-olsr (OLSR configuration and status module)
- luci-app-uhttpd (OLSR configuration and status module)
- luci-app-olsr-viz (OLSR Visualization)
- luci-app-babeld (LuCI support for babeld)
- luci-app-mjpg-streamer (MJPG-Streamer service configuration module)
The migration of luci-app-olsr stood out as an incredibly exciting and valuable learning experience. Notably, this application now boasts a performance improvement of four to five times compared to its previous version. I also created a comprehensive tutorial based on the migration process of luci-app-olsr, which can serve as a valuable reference for writing or migrating other LuCI apps.
The tutorial covers the essential aspects of the process, providing a comprehensive guide. This app is an extensive application that includes both status views and an admin backend.
Below is the tree view representation of the directory structure for the app:
Explore My Contributions
My work can be located within the following commits, and all reviewed applications have been merged. These will soon be accessible to users in the upcoming OpenWRT releases.
- luci-app-olsr: migrate to js
- luci-app-olsr-viz: migrate to js
- luci-app-mjpg-streamer: migrate to js
- luci-app-babeld: migrate to js
- luci-app-uhttpd: migrate to js