Найти тему
Golang

Подборка проектов для разработки GUI на Go:

Оглавление

Графический интерфейс на основе HTML

Go-app — это пакет для создания прогрессивных веб-приложений (PWA) с помощью языка программирования Go (Golang) и WebAssembly (Wasm).

go-astilectron помогает создавать кроссплатформенные приложения с графическим интерфейсом с помощью GO и HTML/JS/CSS. Это официальный пакет GO от astilectron, работающий на Electron.

go-sciter — встраиваемый HTML/CSS/скриптовый движок для разработки современного пользовательского интерфейса。

gowd поможет нам создавать кроссплатформенные приложения с графическим интерфейсом с помощью GO и HTML/JS/CSS (на базе nwjs)。

Gowut — это набор инструментов веб-интерфейса, написанный на чистом Go. Приложения отображаются как HTML-страницы.

Lorca — очень маленькая библиотека для создания современных приложений HTML5 на Go.

Muon — это облегченная альтернатива Electron, написанная на Golang с использованием Ultralight вместо Chromium.

Qlovaseed — это облегченная альтернатива Electron, написанная на Golang. Приложения отображаются как HTML-страницы.

Wails — это фреймворк для создания приложений с использованием Go & Web Technologies.

webview — это крошечная кроссплатформенная библиотека для C/C++/Golang для создания современных кроссплатформенных графических интерфейсов.

2D-векторная графика

draw2d — это библиотека двумерной векторной графики Go с поддержкой нескольких выходных данных, таких как изображения (draw2d), документы в формате pdf (draw2dpdf), opengl (draw2dgl) и svg (draw2dsvg).

gg — это библиотека для рендеринга 2D-графики на чистом Go.

Проект Gio включает эффективный векторный рендерер, основанный на проекте Pathfinder, реализованном на OpenGL ES и Direct3D 11.

giocanvas — это API , созданный поверх Gio.

go-cairo — это пакет Go для графической библиотеки cairo.

Go canvas — это библиотека Go, которая обеспечивает функциональность рисования, максимально похожую на API canvas HTML5, реализованную на бэкэнде OpenGL.

go-chart — это очень простая нативная библиотека Golang для построения диаграмм, которая поддерживает временные ряды и линейные диаграммы.

gonum/plot предоставляет API для построения и рисования графиков в Go.

go-p5 — это простой пакет, предоставляющий примитивы, похожие на те, которые предоставляются библиотекой p5/processing.

go-skia — это библиотека Go skia, основанная на библиотеке skia C через cgo.

NanoVGo — это чистая реализация NanoVG на Golang. Тот же автор поддерживает упомянутый выше проект NanoGUI.go.

svgo генерирует SVG в соответствии со спецификацией Scalable Vector Graphics 1.1.

Еще полезные пакеты:

freetype — это генератор шрифтов Freetype на языке программирования Go.

Пакет golang.org/x/image/font/sfnt анализирует форматы файлов шрифтов SFNT, включая TrueType и OpenType.

pixfont — это простой и легкий пакет Pixel Font (также известный как растровые шрифты) для Go, который работает со стандартным пакетом image/draw.

native GUI

dlgs — это кроссплатформенная библиотека для отображения окон и полей ввода.

gform — это простой в использовании инструментарий Windows GUI для Go.

winc — это библиотека для приложений Go с графическим интерфейсом в Windows (на основе gform).

glfw — это библиотека Go для GLFW 3.

go-gtk — библиотека для GTK2.

RenderView — это простая библиотека Go с графическим интерфейсом для интерактивного управления визуальными алгоритмами. Поддерживает go-gtk (по умолчанию)и gotk3 .

go-mobile добавляет поддержку мобильных платформ (Android и iOS) и предоставляет инструменты для создания мобильных приложений. ( Go для OpenGL ES 2.0 и ES 3.0.)

go-sdl2 — это оболочка SDL2 для пользователей Go.

go-sfml — это библиотека Go для SFML.

Gothic — это привязка tcl/tk.

gotk3 предоставляет инструменты Go для GTK+3 и зависимых проектов (включая cairo).

gotk4 — это генератор GTK4 для Go.

[GoVCL] — это библиотека графического интерфейса пользователя, основанная на Lazarus.

GXUI — это кроссплатформенная библиотека пользовательского интерфейса Go.

MacDriver — это набор инструментов для работы с Apple/Mac API и фреймворками в Go.

qt позволяет вам писать приложения Qt полностью на Go и упрощает их последующее развертывание.

qt.go — это привязка Qt5, в которой вместо CGO используется FFI.

Shiny — это кроссплатформенный пользовательский интерфейс Go.

systray — это кроссплатформенная библиотека Go для размещения окон и меню в области уведомлений. Протестировано на Windows 8, Mac OSX, Ubuntu 14.10 и Debian 7.6.

Trayhost — это кроссплатформенная библиотека Go для разработки интерфейсов.

ui - библиотека обеспечивающая простую разработку программного обеспечения с графическим интерфейсом в Go на основе моего c lib libui.

w32.go — это простой пример создания графического интерфейса Windows с помощью пакета syscall.

Windigo — Win32 API и графический интерфейс для Go.

Walk — это «набор библиотек для приложений Windows» для языка программирования Go.

wui — это библиотека графического интерфейса Windows, использующая собственный Win32 API.

XGB — это X Go Binding, низкоуровневый API для связи с основным протоколом X.

xgbutil — это библиотека, предназначенная для работы с X Go Binding.

zenity — это кроссплатформенный пакет, предоставляющий диалоги в стиле Zenity.

custom GUI

duit — это кроссплатформенный набор инструментов пользовательского интерфейса для разработчиков под лицензией MIT.

Fyne — это простой в использовании инструментарий пользовательского интерфейса и API приложений, написанные на Go. Мы используем OpenGL (через проекты go-gl и go-glfw) для обеспечения кроссплатформенной графики.

gi — это удобный инструмент для создания 2D и 3D GUI/графических интерфейсов .

Gio - это изящно написанный инструмент для создания кросплатформеннных программ с графическим интерфейсом .

goey предоставляет декларативный кроссплатформенный графический интерфейс для языка Go. Предостаялет набор элементов управления и их поддерживаемых свойств и событий , который примерно соответствует тому, что доступно в HTML.

go-flutter — это пакет, для работы с Flutter .

gui обеспечивает минималистичный и удобный для работы инструмент .

imgui-go — это оболочка Go для Dear ImGui.

giu — это фреймворк с графическим интерфейсом, основанный на imgui-go. (Еще один аналогичный от того же автора, gimu,)

NanoGUI.go — это порт NanoGUI на Golang.

nk предоставляет интрубмент Go для работы с nuklear.h.

3D-графика

d3d9 — это оболочка Go для Microsoft Direct3D9 API.

Репозиторий gl содержит пакеты Go к различным версиям OpenGL.

vulkan пакеет Go для Vulkan — кроссплатформенного API для трехмерной графики и вычислений с низкими расходами ресурсов.

Библиотека связанные с разработкой игр

godot-go — библиотека для GDNative API Godot Engine.

Интерфейс терминала

Кстати, если вы заинтересованы в разработке программ Go для терминала, посмотрит на tcell, tview.

Golang
Go tests
Golang Jobs