@herdingSheep
Based on @hiteshjasani's answer, this is a tested, working example: include karax / prelude import karax / [vstyles] var name: kstring = "Name will appear here" proc createDom(): VNode = result = buildHtml(tdiv): h1(id = "changeName"): text name form: label(`for` = "fname"): text "Enter Name:" input(`type` = "text", id = "fname", name = "fname"): proc onKeyUp(ev: Event, n: VNode) = name = n.value() setRenderer createDom Run