Elias Naur 76b10751a6 apps: go get -u gioui.org/ui; go mod tidy
Signed-off-by: Elias Naur <mail@eliasnaur.com>
2019-03-31 10:48:33 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00
2019-03-31 10:47:22 +02:00

Gio

Gio implements portable immediate mode GUI programs in Go. Gio programs run on all the major platforms: iOS/tvOS, Android, Linux (Wayland), macOS and Windows.

Quickstart

Gio is designed to work with very few dependencies. It depends only on the platform libraries for window management, input and GPU drawing.

For Linux you need Wayland and the wayland-client, wayland-egl, wayland-cursor, and xkbcommon development packages.

Xcode is required for macOS and iOS.

For Windows you need the ANGLE drivers for emulating OpenGL ES. You can build ANGLE yourself or use mine.

With Go 1.12 or newer,

$ go run gioui.org/apps/gophers

should display a simple (nonsense) demo.

Android

For Android you need the Android SDK with the NDK installed. Point the ANDROID_HOME to the SDK root directory.

To build a Gio program as an .aar package, use the gio tool. For example,

$ go run gioui.org/cmd/gio -target android gioui.org/apps/gophers

to produce gophers.aar, ready to use in an Android project. To run the demo on an Android device:

$ git clone https://git.sr.ht/~eliasnaur/gio
$ cd gio/apps/gophers/android
$ go run gioui.org/cmd/gio -target android ..
$ ./gradlew installDebug          # gradlew.bat on Windows

The gio tool passes command line arguments to os.Args at runtime:

$ go run gioui.org/cmd/gio -target android .. -token <github token>

License

Dual-licensed under MIT or the UNLICENSE.

Contributing

Discussion and patches: ~eliasnaur/gio-dev@lists.sr.ht. Instructions. for using git-send-email for sending patches.

Contributors must agree to the developer certificate og origin, to ensure their work is compatible with the MIT and the UNLICENSE. Sign your commits with Signed-off-by statements to show your agreement. For convenience, the git commit --sign signs a commit with the name and email from your user.name and user.email settings.

Bugs and TODOs go in the issue tracker.

S
Description
No description provided
Readme Multiple Licenses 6 MiB
Languages
Go 89.6%
C 7%
Java 1.7%
Objective-C 1.6%