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
2020-08-08 08:25:56 +02:00
androidextras initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
bluetooth initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
charts initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
cmd greatly extend the Go <-> Qml/JS interoperability 2019-11-17 18:05:18 +01:00
core add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
datavisualization initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
dbus add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
designer initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
felgo fixes for various potential memory leaks 2019-11-28 18:42:54 +01:00
flutter add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
gamepad initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
gui add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
help initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
internal Fixing non unique ID on fast requests 2020-08-05 14:22:13 +02:00
interop add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
location initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
macextras initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
multimedia initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
network add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
nfc initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
positioning initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
printsupport initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
purchasing initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
qml add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
quick initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
quickcontrols2 initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
remoteobjects initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
sailfish initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
script add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
scripttools initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
scxml initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
sensors initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
serialbus initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
serialport initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
speech initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
sql initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
svg initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
testlib initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
uitools initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
virtualkeyboard add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02:00
webchannel initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
webengine initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
webkit fixes for various potential memory leaks 2019-11-28 18:42:54 +01:00
websockets initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
webview initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
widgets initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
xml initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
xmlpatterns initial commit of the interop engine + new flutter module + fixes for minor issues 2020-06-01 21:40:46 +02:00
.gitignore add support for haxe and swift + fix interop stack overflow issue 2020-07-01 22:05:31 +02: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 even more changes related to the js binding + fixes for Qt 5.14 2019-12-21 17:42:05 +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 various changes related to the js binding 2019-12-10 17:08:50 +01: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.md to match the new repo location 2020-08-08 08:25:56 +02:00

Introduction

Qt is a free and open-source widget toolkit for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms with little or no change in the underlying codebase.

Go, also known as Golang, is a programming language designed at Google.

therecipe/qt allows you to write Qt applications entirely in Go or JavaScript.

Beside the language bindings provided, therecipe/qt also greatly simplifies the deployment of Qt applications to various software and hardware platforms.

At the time of writing, almost all Qt functions and classes are accessible from Go and JavaScript, and you should be able to find everything you need to build fully featured Qt applications.

Impressions

Gallery of example applications.

JavaScript Demo | source

Installation

The following instructions assume that you already installed Go and Git

Windows (more info)
set GO111MODULE=off
go get -v github.com/StarAurryon/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/StarAurryon/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 itself is licensed and available under multiple licenses.