Our great sponsors
purego | iup-go | |
---|---|---|
21 | 11 | |
1,799 | 251 | |
4.2% | - | |
7.9 | 5.7 | |
25 days ago | 5 months ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
purego
- Show HN: Sqinn-Go is a Golang library for accessing SQLite databases in pure Go
-
SIMD in Go
Maybe interesting for you: https://github.com/ebitengine/purego
-
Ideas for GUI libraries?
most X11 functionality can be accessed via xgb|xgbutil (jezek has a current fork). nucular makes use of it via shiny. OpenGL and such libraries can be assumed to exist on those systems, so directly calling those c libraries without cgo is a possibility. Ebiten is currently working on it: purego.
- Go 1.21 will (likely) have a static toolchain on Linux
-
The Simplicity of Single-File Golang Deployments
In the malware reverse engineering scene, there are a lot of forks of the upstream "debug" go library, because it allows loading, parsing, compiling and executing libraries from disk (rather than in-kernel or in-userspace).
And there's also "purego" as an implementation that directly generates shellcode.
Maybe those will help you, too?
I am just mentioning these because for my use cases those approaches worked perfectly, CGO free.
-
Precompiled CGo Code
You could use https://github.com/ebitengine/purego which would not require a C compiler to build
- 뉴스 스크랩 2023-02-14
-
GitHub - ebitengine/purego
What is this doing? I don't understand the comment at the top, but the resulting file gives me the fear.
-
Purego – A library for calling C functions from Go without Cgo
I thought I had a piece of dust on my screen, but as I scrolled the dust scrolled: what do these 0xB7 characters do in the identifiers? Are they just "name mangling" to keep them from being exported or something?
https://github.com/ebitengine/purego/blob/v0.2.0-alpha/sys_d...
I noticed another 0xB7 character in a comment, and sure enough it seems to be part of the identifiers: https://github.com/ebitengine/purego/search?q=runtime%C2%B7c...
iup-go
-
Ideas for GUI libraries?
For years I had Qt experience in Python and C++. But I found it too heavy to introduce in a Go project. After trying a couple different options (I'm not a web dev) I actually really liked IUP. https://github.com/gen2brain/iup-go
-
IUP – Cross platform C GUI library
IUP is very nice and easy to use, and it uses real native controls, which is a big plus. Compared to wxWidgets, being written in C, it is easy to create bindings. I maintain Go bindings for IUP core here https://github.com/gen2brain/iup-go.
I wish development is faster though, perhaps moving the project to GitHub could help with that. I would like to see modern tray support on Linux instead of legacy one, someone to finish Cocoa support, native table/list view control (it is on the TODO list), support for gtk+ 4, etc.
You can check the screenshot from Windows 10 here https://github.com/gen2brain/iup-go/blob/main/examples/sampl.... If you are not using the manifest it will not follow the system appearance and will always look like Windows XP Classic.
-
bindings to GTK or QT
I've tried a few different Go gui solutions so far. Coming from a C++/Python Qt background, I wanted to use Qt bindings but found them to be a bit too heavy as a dependency in Go. And I'm not a skilled web dev so some of the other options didn't suit me well enough. But I did actually enjoy using this in a recent project: https://github.com/gen2brain/iup-go
-
Desktop UI
For native controls check https://github.com/gen2brain/iup-go.
-
Are there any cross-platform GUI frameworks programmable with Go which you’d recommend?
That depends on your requirements. I'm currently using IUP for a desktop app (Linux and WIndows). Caveats:
-
Go GUI with access to filesystem... Best approach?
For native UI, you can check https://github.com/gen2brain/iup-go. There are 50+ examples to help you, i.e. show images, buttons, file dialogs, etc.
-
What is the coolest Go open source projects you have seen?
If I may, https://github.com/gen2brain/iup-go: Cross-platform UI library with native controls.
-
What makes Go unsuitable for UI development?
You can check https://github.com/gen2brain/iup-go. The Cocoa backend is still not finished but it works for basic UI. There is GLCanvas for Linux and Windows.
-
The Linux GUI toolkit situation, or why Electron (or similar) is sadly the future.
I recently created a Go binding here https://github.com/gen2brain/iup-go and was amazed how simple API is, thanks to their attribute system. Although they have some controls that are custom, everything else is native. Compared to Qt or wxWidgets, IUP is just a UI toolkit, Qt/wxWidgets is much more than just a UI toolkit.
What are some alternatives?
barcode-server - A simple daemon to expose USB Barcode Scanner data to other services using Websockets, Webhooks or MQTT.
go-plugin - Golang plugin system over RPC.
nocgo - dlopen in go without cgo
gamen - Cross-platform GUI window creation & management library in Go
unison - A unified graphical user experience toolkit for Go desktop applications
mach - zig game engine & graphics toolkit
rust-plus-golang - Rust + Go — Call Rust code from Go using FFI
zenity - Zenity dialogs for Golang, Windows, macOS
go-simd - SIMD implementation in Go
bud - The Full-Stack Web Framework for Go
bubbletea - A powerful little TUI framework 🏗
go - The Go programming language