genxproj
What is genxproj
genxproj is a generic, X11 based project manager, running on Linux.
It can manage any sort of projects workflow by:
- running different applications to edit the files of the project
- optionally embedding the applications, emulating tabs or split screen
- remote controlling the applications and running glue scripts to get the data flow within the project
- providing an easy way to customize both the looks and the logics of the GUI
How to install genxproj
How does it work
Genxproj is a framework that is not tied to any particular workflow or
application or file/project format. To make genxproj useful, a workflow
implementation is required, which consists of:
- the description of the GUI as a system of boxes (plain text lihata file)
- a set of png files for widget graphics
- the GUI logic (typically a script in one of the popular scripting languages such as lua or tcl; can also be C)
- application-specific remote control injection code (for applications with no feasible remote control API; typically in the range of 100 lines of C code)
What genxproj, as a framework provides:
- customizable/scriptable GUI
- code to run applications
- code to embed X11 application windows (the application doesn't need to cooperate on this)
- code to remote control such applications (the application doesn't need to cooperate on this)
- optional code to manage a project file in the lihata format (for flows that do not have their own project file format)
Limitations:
- works only under Linux and X11
Example
The gsch2pcb-rnd flow at TODO; the flow consists of
- gschem for editing circuit schematics
- pcb-rnd to lay out printed circuit boards
- gerbv to verify the gerber export
technical details