я конечно не против веб стека, но отрицать боль создания интерфейсов на хтмл - глупо. достаточно в сети загуглить что-то по этой теме. вы наткнётесь на кучу статей в этом духе
не зря же придумывают UI фреймворки (вью, реакт и пр), которые используют компонентных подход