Semi-graphical user interface framework
CLI tools are very powerful but sometimes user needs a bit more convenience which is difficult to get when GUI is not presented (remote server, low network bandwidth, lack of system resources, etc.). In such cases a good compromise is to use semi-graphics to build user interface. SemiGUI is a framework which provides a set of standard widgets (label, button, checkbox, etc.) and techniques to organize them on the screen. Programmer can whether build UI by using SemiGUI API or by defining it in an XML layout file.