This issue is often a lot more complex than it sounds. Tips welcome and appreciated. [RS] 2003-08-21: I often make it a rule to design an app in terms of a Tcl API that does not require Tk. All functionality is available over [proc] calls. In a second step I design a GUI and add visualisation of app objects and triggers - buttons or menu items that call one of the API commands; labels with textvariables that further control the APIs action. Examples: [Chess in Tcl], [TclMusic].