NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Show HN: Gova – The declarative GUI framework for Go (github.com)
kitd 58 seconds ago [-]
Nice work. The hot-reload dev cli looks very cool in a compiled-binary world.
dgb23 4 hours ago [-]
The code looks nice, but when I read GUI, I want to see screenshots of GUIs.

Apparently a major dependency is "Fyne", which does show some screenshots on their page:

https://fyne.io/

curioussquirrel 3 hours ago [-]
Came here to say the same. Please add a few screenshots!
iamcalledrob 3 hours ago [-]
I'll be watching this project.

Looking forward to a Golang declarative framework.

My advice to the author: invest in rich multi-window support early on. It's easy not to, but you always need it in the end, and it's painful to retrofit.

I feel like there's a great cross-platform UI story to be told with Go, since cross compiling is so easy.

GuardCalf 4 hours ago [-]
I once built a small utility using the "Fyne" framework; it was reasonably functional and made it very convenient to compile cross-platform executables (including for Android).

I took a look at your recommendation, "gova"; it seems to be just getting started—keep up the good work!

rubenvanwyk 3 hours ago [-]
Very excited every time I see cross-platform GUI in go.

I think the right mental model is that Gova is to Fyne like DaisyUI is to TailwindCSS??

vr46 3 hours ago [-]
Looks quite nice, alternatives to Tauri always welcome although that Tauri is truly fantastic, so much to emulate.
fragmede 48 minutes ago [-]
Tauri is basically Electron though. This is a native toolkit, which is another thing entirely.
vegancap 3 hours ago [-]
That's a beautifully designed library, bravo! Will have to give it a go
donatj 3 hours ago [-]
This wraps Fyne? As a long time user of Fyne, what does this provide beyond Fyne itself?
red_admiral 2 hours ago [-]
A "mithril" like syntax. Like you could do (wrapped over multiple lines of course)

m.div([m.h1("title"), m.p(["click", m.a({href:"..."}, "me")])])

you can do (taken from the page)

g.VStack(g.Text(...), g.HStack(...).Spacing(g.SpaceMD))

some people will like this style, others not.

neomantra 40 minutes ago [-]
The repo doesn't say it, but the Author noted on the Gophers Slack #showandtell that the style was inspired by SwiftUI. That VStack example shows it quite well.
rubenvanwyk 3 hours ago [-]
I think styling and ready-made components out of the box?
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 12:31:20 GMT+0000 (Coordinated Universal Time) with Vercel.