\

Show HN: Gova – The declarative GUI framework for Go

64 points - today at 6:16 AM

Source
  • dgb23

    today at 8:21 AM

    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

        today at 9:03 AM

        Came here to say the same. Please add a few screenshots!

          • giancarlostoro

            today at 12:43 PM

            Dear Future architect of some neat new technology to be someday posted on HN please do the following:

            If you make anything with a UI, even a GUI stack, always include screenshots. If you make a programming language or programming framework / library, always include code samples!

            Really show us nerds the bits we want to see right away, screenshots / code or even a video (fully optional, unless its some type of terminal shell or something where a video would illuminate things!) would sell it better. Many of us are working and don't yet have time to pull down everything to run it locally.

            Honestly, even if its not open source, if you're selling a product, SHOW THE PRODUCT not just descriptions of the product.

    • kitd

      today at 12:30 PM

      Nice work. The hot-reload dev cli looks very cool in a compiled-binary world.

      • iamcalledrob

        today at 9:06 AM

        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.

        • rubenvanwyk

          today at 9:46 AM

          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

            today at 9:35 AM

            Looks quite nice, alternatives to Tauri always welcome although that Tauri is truly fantastic, so much to emulate.

              • fragmede

                today at 11:43 AM

                Tauri is basically Electron though. This is a native toolkit, which is another thing entirely.

            • vegancap

              today at 9:32 AM

              That's a beautifully designed library, bravo! Will have to give it a go

              • donatj

                today at 9:10 AM

                This wraps Fyne? As a long time user of Fyne, what does this provide beyond Fyne itself?

                  • red_admiral

                    today at 10:35 AM

                    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

                        today at 11:51 AM

                        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

                      today at 9:45 AM

                      I think styling and ready-made components out of the box?

                  • GuardCalf

                    today at 8:46 AM

                    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!