GUI programming from the ground up with Gio

In this workshop, Elias will take you all the way from an empty "func main" to a functional
GUI program that runs on your desktop, mobile and even in a browser. Along the way, you will
be introduced to the core concepts of Gio, in particular immediate mode GUIs and how common
tasks such as drawing, layout and input look like."

Abstract

In this workshop, Elias will take you all the way from an empty "func main" to a functional
GUI program that runs on your desktop, mobile and even in a browser. Along the way, you will
be introduced to the core concepts of Gio, in particular immediate mode GUIs and how common
tasks such as drawing, layout and input look like."

Level: Intermediary, experienced Go programmers.

Prerequisites:
- Go 1.13.
- Follow the setup instructions on https://man.sr.ht/~eliasnaur/gio/install.md
for your desktop system (Linux/Wayland, macOS, Windows). You have set up your
system correctly if you can run

$ go env -w GO111MODULE=on
$ go run gioui.org/apps/hello

and get a window with a "Hello, world" text in it.

Linux users, please note that Gio does not yet support X11, so you do need a
Wayland compatible compositor to run Gio. If the "go run" command above result in
the error "wayland: wl_display_connect failed" you're probably running X11.

- (Optional) If you want to run Gio programs on iOS or Android (device or
emulator), you need to follow the install instructions for those platforms.
Please note that running on iOS requires Xcode and a computer running macOS.

You have set eveything up correctly if you can run either

$ go run gioui.org/cmd/gio -target android gioui.org/apps/hello
$ adb install hello.apk

with a connected Android device or running emulator, or

$ go run gioui.org/cmd/gio -target ios -o hello.app gioui.org/apps/hello
$ xcrun simctl install booted hello.app

with a running iOS simulator.

* = the workshop will be paused for lunchtime and PM coffee break.

Stay connected

You can subscribe to our newsletter to stay updated on the latest news and announcements. Follow us on social media to join our community and engage with other attendees, speakers, and staff. We're on Twitter, Mastodon, Youtube and Facebook. Don't forget to use our official hashtag #GoLab2023 to share your experience and connect with other attendees on social media.

Subscribe to our newsletter

We hate spam just as much as you do, which is why we promise to only send you relevant communications. We respect your privacy and will never share your information with third parties.
©2023 GoLab | The international conference on Go in Florence-Design & devCantiere Creativo-Made withDatoCMS