Sławomir Lach
Lachu
Involved Projects and Packages
BonsoleRTA allows to communicate with user in GUI and console. For GUI it provides web browser interface. Application communicates with web UI (called Bonsole) via DBUS. User can ran UI by itself and point path of app Bonsole should ran. Additionally, user can ran application normally both on cli and GUI. BonsoleRTA is a framework provides markup language to describe app functionality and UI. It support anchors and forms. When running in GUI, GUI works in separate process than program and can have different permissions. Programmer can use BonsoleRTA to separate app logic, which runs with higher privileges, from UI. Difference between this approach and DBus based approach is BonsoleRTA send request in similar form than get request of web browsers. It's harder to implement this, but requires less knowledge.
Libgreattao is framework to build app by simple gives information about possible actions to framework. Of course, programmer could also set icon, shortcut, etc., but Libgreattao is able to built UI by information about possible action. It's possible thanks to window class files, which contains templates and UI elements. Each action have weight, which allow to decide, which template use. In fact, /actions/app/exit could have weight 1 and /actions/files/open could have weight 0, so prior is added additionally to toolbar and second will be added only to app menu. Libgreattao app have many backends (GTK+, Qt, TUI and shell). Shell is console shell - you can work with program interactively by setting value of action path and invoke actions. You can also wrote a script to control application.
Libgreattao allows user, system and DE vendors to change UI of app by defining custom UI class. Class is kept in xslt or tao-stylesheet file. This aims to allow developers focus on functionality and do not create many applications, which differs only in UI, because UI part is separated.