In reply to @guttural666 "at the moment I'm": Ah , you worry mostly about the code itself rather than it blowing up on you. I mean if this works for you, that's okay. Also I wouldn't worry too much about actually redrawing the UI. Owlkettle iirc mostly just updates existing widgets with values rather than actually doing a re-render. Basically you have your widget object, which have state in GTK. Then you have counterparts of them in owlkettle. All a redraw does is sync the nim-state into the GTK state to update it. That should be not that expensive.