Now that we have explored a little of how Shiny is designed and its current constraints, we can implement our first graphical application and see it run.
Let's get started with writing a simple hello world window, as in the previous chapters. This code is a little more complicated than in previous examples due to the low-level nature of the toolkit at this time. As well as defining the window, label, and button, we will need to set up a background layer and measure the minimum size for the containing window:
package main import ( "golang.org/x/exp/shiny/driver" "golang.org/x/exp/shiny/screen" "golang.org/x/exp/shiny/widget" "golang.org/x/exp/shiny/widget/theme" "log" ) func main() { driver.Main(func(s screen.Screen) { label := widget.NewLabel("Hello World!") button := newButton("Quit", func() { log.Println("To quit close this window") }) w := widget.NewFlow(widget.AxisVertical, label, button) sheet...