app: skelet for gui logic