Live data from Hacker News

Gio UI – Cross-platform GUI for Go

gioui.org

111–120 of 224 posts

Re: Gio UI – Cross-platform GUI for Go

#111
post #2

A bit off-topic, but what's the best method to build cross-platform mobile & web apps nowadays ? I'm talking either business logic + UI , or just business logic ? like gomobile, rust, typescript, etc ? At some point i thought about using typescript for all business logic, as it seemed the most portable tech, but i realized there's no good way to have decent performance running javascript on iOS.

My team achieved better than native performance using RN when rewriting a very large iOS app. And that was in 2018, before Hermes and a lot of other optimizations. It takes some careful usage of requestIdleCallback and avoiding doing work in the UI thread but it is not rocket science. You do have to avoid a lot of the going advice and bloated libraries / frameworks though.

> better than native performance using RN

You had an app written natively in Objective-C or Swift, switched to single-threaded javascript React Native, and then your app ran faster?

Re: Gio UI – Cross-platform GUI for Go

#113
post #89

The amazing thing is that 30 years ago there were cross platform toolkits like Neuron Data and the toolkit under OpenOffice(called StarOffice originally), and yet today the options are still fragmented and imperfect. We have far better compilers and even languages for cross-platform work, so it should be easier by now.

I'm still super disappointed that javafx died.

JavaFX is alive.

Check out what do people work on using JavaFX: https://www.jfx-central.com/links

Re: Gio UI – Cross-platform GUI for Go

#114

I built a small app in Go using Fyne. Never again. Both Gio and Fyne lack tons of polish and features Flutter provides. I built my core logic in Golang, and then decided to wrap it in an Android app. The GUI feels like it came out of 2003 with limited ways to fix it.

Sounds interesting. How did you wrap it in an Android app if you could elaborate?

Re: Gio UI – Cross-platform GUI for Go

#115

The amazing thing is that 30 years ago there were cross platform toolkits like Neuron Data and the toolkit under OpenOffice(called StarOffice originally), and yet today the options are still fragmented and imperfect. We have far better compilers and even languages for cross-platform work, so it should be easier by now.

Building a cross-platform GUI toolkit takes an incredible amount of work & time, especially at the systems level.[0] A robust cross-platform ecosystem for the underlying programming language is a necessary but insufficient piece of the puzzle. Given the proliferation of HTML and WebView/web-tech wrappers (Electron, Tauri, React Native etc.) there are now enough "good enough" solutions that most organizations that wou…

Maybe Google execs watched Theo’s JS frameworks review? https://m.youtube.com/watch?v=WJRf7dh5Zws

Re: Gio UI – Cross-platform GUI for Go

#116

Interesting that the WASM demo on the front page just render a black rectangle where the text is supposed to be on my fairly vanilla Windows 10 PC with Chrome (it rendered fine in Chrome on my Android phone).

It wasn't just me. Whew. It also ran incredibly slow.

Re: Gio UI – Cross-platform GUI for Go

#117

I built a small app in Go using Fyne. Never again. Both Gio and Fyne lack tons of polish and features Flutter provides. I built my core logic in Golang, and then decided to wrap it in an Android app. The GUI feels like it came out of 2003 with limited ways to fix it.

A different option is Wails [1], which allows you to write all logic in Go, and the UI in HTML (with any or no web framework). It's like Electron but lighter because it doesn't ship Chrome but uses the system's web viewer instead.

[1] https://github.com/wailsapp/wails

Re: Gio UI – Cross-platform GUI for Go

#118
post #55
post #7

Earlier quoted context omitted.

The best option is probably Flutter right now: https://flutter.dev/ If you don't mind writing the UI native, sharing only business logic code, Kotlin is an option: https://kotlinlang.org/docs/multiplatform.html#kotlin-multip... Kotlin also can do the UI if you use Compose: https://www.jetbrains.com/lp/compose-multiplatform/ ... however, iOS support is still in alpha, and Web is "experimental". If you're not willing t…

The one flutter website I have come across is an absolute piece of garbage. Completely destroys the ability to modify or even inspect the HTML source. See for yourself https://sunrisetv.ch/de/vod/1/details/vod/crid:~~2F~~2Fog.li...

And it has laggy scrolling. What’s the benefit?

Re: Gio UI – Cross-platform GUI for Go

#119
post #65

Seemingly it's using a to render everything just like Flutter on Web, which is known to have problems with accessibility and feel non-native.

I mean it's not primarily a web app framework, it's a native GUI toolkit which has a web back-end.

It isn't native on any other platform either.

Re: Gio UI – Cross-platform GUI for Go

#120

The amazing thing is that 30 years ago there were cross platform toolkits like Neuron Data and the toolkit under OpenOffice(called StarOffice originally), and yet today the options are still fragmented and imperfect. We have far better compilers and even languages for cross-platform work, so it should be easier by now.

Yes, as a longtime software developer people have been trying to solve this problem different ways my entire career. The closest we got was Java swing. And it works well enough for things like eclipse but for some reason, nobody wants to use it and they want to use things like Electron instead
Post reply on HN