libRUIN (Renderer for User Interfaces in Ncurses) is a rendering library for various XML-based user interface markup languages (such as Mozilla XUL), using the Ncurses (http://www.gnu.org/software/ncurses/) terminal control library as a rendering target. GNU Guile (http://www.gnu.org/software/guile/) and the SDOM (http://www.nongnu.org/sdom/) Scheme module are used as the "glue" that manages user input and event handling. An application programmer passes an XML document (including, potentially, a set of CSS stylesheets) and an Ncurses WINDOW structure, and libRUIN paints the WINDOW according to the markup and CSS; the programmer may subsequently pass Ncurses-style input strings to that WINDOW via libRUIN, and libRUIN will handle the resulting event flows.
These details are provided for information only. No information here is legal advice and should not be used as such.