Cute (Qt) binding for Go (Golang) with support for Windows / macOS / Linux / FreeBSD / Android / iOS / Sailfish OS / Raspberry Pi / AsteroidOS / Ubuntu Touch / JavaScript / WebAssembly
Find a file
2019-11-17 22:12:35 +01:00
androidextras greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
bluetooth greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
charts greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
cmd greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
core fixes for older Go and Qt versions 2019-11-17 22:12:35 +01:00
datavisualization greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
dbus greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
designer greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
felgo declare various additional metatypes 2019-10-14 20:30:44 +02:00
gamepad greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
gui greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
help greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
internal fixes for older Go and Qt versions 2019-11-17 22:12:35 +01:00
location greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
macextras greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
multimedia greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
network greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
nfc greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
positioning greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
printsupport greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
purchasing greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
qml fixes for older Go and Qt versions 2019-11-17 22:12:35 +01:00
quick greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
quickcontrols2 greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
remoteobjects greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
sailfish greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
script greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
scripttools greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
scxml greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
sensors greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
serialbus greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
serialport greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
speech greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
sql greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
svg greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
testlib greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
uitools greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
virtualkeyboard greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
webchannel greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
webengine greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
webkit fix invokeMethod signature errors 2017-08-18 00:08:07 +02:00
websockets greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
webview greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
widgets greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
xml greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
xmlpatterns greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
.gitignore greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
_config.yml Set theme jekyll-theme-cayman 2017-04-08 21:13:04 +02:00
azure-pipelines.yml use azure pipelines for docker image building 2018-11-07 19:45:50 +01:00
go.mod revert go.mod and go.sum changes 2019-10-15 17:50:15 +02:00
go.sum revert go.mod and go.sum changes 2019-10-15 17:50:15 +02:00
LICENSE Dropping exec permissions on files 2017-04-12 15:21:13 +07:00
qt.go greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
qt_android.go minor cleanup 2018-03-20 14:52:35 +01:00
qt_js.go experimental support for the msvc builds to get the webengine/webview modules working on windows 2019-09-10 20:17:30 +02:00
qt_notjs.go more fixes for js/wasm + fix ldFlags issue + fix minor iOS build issue 2018-11-17 02:47:23 +01:00
qt_wasm.go experimental support for the msvc builds to get the webengine/webview modules working on windows 2019-09-10 20:17:30 +02:00
qt_wasm_112.go experimental support for the msvc builds to get the webengine/webview modules working on windows 2019-09-10 20:17:30 +02:00
qt_wasm_113.go experimental support for the msvc builds to get the webengine/webview modules working on windows 2019-09-10 20:17:30 +02:00
README.md update README + minor fixes 2019-10-23 01:27:33 +02:00

Introduction

Qt is a cross-platform application framework that is used for developing application software that can be run on various software and hardware platforms with little or no change in the underlying codebase.

Go (often referred to as golang) is a programming language created at Google.

This package allows you to write Qt applications entirely in Go and makes deploying them later very easy.

Gallery of example applications making use of this package.

WebAssembly Live Demo | repo

Status

Almost all Qt functions and classes are accessible from Go and you should be able to find everything you need to build fully featured applications.

Installation

Windows (more info)
set GO111MODULE=off
go get -v github.com/therecipe/qt/cmd/... && for /f %v in ('go env GOPATH') do %v\bin\qtsetup test && %v\bin\qtsetup -test=false
macOS (more info)
export GO111MODULE=off; xcode-select --install; go get -v github.com/therecipe/qt/cmd/... && $(go env GOPATH)/bin/qtsetup test && $(go env GOPATH)/bin/qtsetup -test=false
Linux (more info)
export GO111MODULE=off; go get -v github.com/therecipe/qt/cmd/... && $(go env GOPATH)/bin/qtsetup test && $(go env GOPATH)/bin/qtsetup -test=false

Resources

Deployment Targets

Target Arch Linkage Docker Deployment Host OS
Windows 32 / 64 dynamic / static Yes Any
macOS 64 dynamic Yes Any
Linux arm / arm64 / 64 dynamic / static / system Yes Any
Android (+Wear) arm / arm64 dynamic Yes Any
Android-Emulator (+Wear) 32 dynamic Yes Any
SailfishOS arm system Yes Any
SailfishOS-Emulator 32 system Yes Any
Raspberry Pi (1/2/3) arm dynamic / system Yes Any
Ubuntu Touch arm / 64 system Yes Any
JavaScript 32 static Yes Any
WebAssembly 32 static Yes Any
iOS arm64 static No macOS
iOS-Simulator 64 static No macOS
AsteroidOS arm system No Linux
FreeBSD 32 / 64 system No FreeBSD

License

This package is released under LGPLv3

Qt is available under multiple licenses