I 100% know it's a preference/style kind of thing, and I know the React/Node isn't perfect and comes with it's downfalls, but I whenever I have to code in anything other, I just miss the visual/mental model aspect of having your tsx code basically identical to your actual html.
The mental load of going from this to
func main() {
component := Page{
Children: []Component{
Div{
Children: []Component{
Button{Name: "Test button"},
},
},
},
}
to this <Page>
<div>
<Button> Test button</Button>
</div>
</Page>`
or going from this: const main = () => (
<Page>
<div>
<Button> Test button</Button>
</div>
</Page>
)
To, well... case in point, exactly the same thing is just so nice.