I'm actually building my latest project this way. Not using this project though.
I actually really enjoy it. I have all of my go test stuff running in subpackages, and a fairly thin main package that hooks my models up to vue.js and builds some frappe charts. I very much enjoy taking the workflow I use to build efficient services and using it to build my simple frontends.
two-way data binding on a go struct is actually kind of magical and not something you could really go without javascript since (I assume) it relies on Object.observe and go doesn't really have properties. Goroutines and channels in javascript are also really magical.