It is ironic that the LuCI team decided to make an announcement regarding their project today. I have also been working on a new (open source) web interface for Kamikaze called Gargoyle, and am now releasing the first beta version, which can be found at gargoyle-router.com. The decision to release now was made completely independently of this announcement, and was made some time ago based on the progress of the project. It is just a coincidence that these announcements come on the same day.
Right up front I want to emphasize that Gargoyle is, like both LuCI and X-Wrt a front-end for OpenWrt and NOT a fork. It can be installed as a set of packages on top of a default installation of Kamikaze 7.09, as well as via firmware images. Currently it is designed to run on top of Kamikaze 7.09 and not the trunk, but as soon as another stable version is released it will be engineered to run on top of that. However, several features included in the current trunk have been incorporated (e.g. the new UCI) and are installed as packages on top of the default Kamikaze release. I have chosen to incorporate the features this way so that the interface could be built around a stable version vs. the ever-changing trunk. Gargoyle takes a very different philosophical approach to interface design than X-Wrt or what I've seen of the new LuCI. Both X-Wrt and LuCI seem to be designed with the goal of providing the absolute maximum functionality possible. However, this often comes at the expense of making the interface more difficult to use, and can turn off novice users. There seems to be a belief that open-source software should be designed for power-users, without much thought to those with less expertise. Currently all router web interfaces that place a strong emphasis on ease-of-use are proprietary (their licenses do not permit redistribution of modified versions of their code without the author's permission). Gargoyle aims to be the first open-source web interface that places a strong emphasis on usability, and aimed at less experienced users. Because Gargoyle runs on top of OpenWrt, a more experienced user can also configure extra functionality relatively easily. Gargoyle includes a custom bandwidth monitoring package, a customized version of minihttpd , a new package for performing dynamic dns updates (similar to the ddns-scripts package which I submitted a few months ago, but written in C to be faster and linked to MatrixSSL to allow updates via https) and a custom set of QoS scripts (I found the current default OpenWrt implementation a bit convoluted). The modified web server does not, however, provide any of the interface code -- it's mostly modified to allow password protecting the interface more appropriately. The backend of the interface uses haserl, like X-wrt, but does not rely heavily on these shell-scripts. The interface is mostly javascript, which makes the interface feel faster than if it relied heavily on server-side scripts. Gargoyle is an open-source project and contributions are very, very welcome. I am releasing it under the terms of the GPL v2.0, with an exception/clarification that states that it may be modified to configure proprietary back-end software so long as all portions of the web interface are released under the terms of the GPL. See the FAQ (gargoyle-router.com/faq.html#qfoss) for more details. It is likely that the other web interface project(s) may benefit from some of the components that I've created, and also very likely that Gargoyle could benefit from some components of other open-source interfaces. I would be happy to share knowledge/code/ideas with other projects, even though the goals/philosophy of the projects may differ -- please contact me if interested. More information / documentation is available at gargoyle-router.com for those interested. Eric _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel