draft of UI + handling dependencies