Найти в Дзене
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

Что-то пошло не так, и нам не удалось загрузить комментарии. Попробуйте ещё раз
Рекомендуем почитать
А надо ли в компьютере вообще менять термопасту?
Всем привет, дорогие друзья. Рад вас видеть! Когда я выбирал себе видеокарту, наткнулся на объявление. Белым по черному владелец писал (причем гордо), что да, карта из фермы, но при этом не вскрывалась, так как он не принадлежит к касте заменятелей (цитата) термопасты. Не то, чтобы это вызвало у меня бугурт, сам-то я пасту регулярно меняю, но вот что поразило: оказывается, все, кто меняет пасту - это теперь, понимаешь, каста! Как в свое время были раскрыватели (что в общем-то не совсем бред, но я к ним не отношусь)...
Знакомьтесь ESP32-S3-DevKitC-1 pinout
Театр начинается с вешалки, а работа с микроконтроллером с назначения выводов. Даже если использовать его только как "конструктор для домохозяек" в среде Arduino IDE исключительно с использованием готовых библиотек - необходимо понимать на какие ноги, что подключать, и какие лучше не использовать совсем и почему. ESP32-S3-WROOM периферийные устройства Вы можете решить, какие контакты будут UART, I2C, SPI, PWM и т. д. — вам просто нужно назначить их в коде. Это возможно благодаря функции мультиплексирования чипа ESP32-S3...
От разработки OpenSource-проекта опять отключили разработчика
От разработки OpenSource-проекта опять отключили разработчика. И, по всей видимости, на этот раз не за гражданство, а за политические взгляды, но не все так однозначно. Один из разработчика "иксов", системы, которая обеспечивает работу графических интерфейсов в линукс, создал форк под названием X11Libre. И сделал это Enrico Weigelt, он же metux, по причине того, что его учетная запись и все коммиты были стерты с сайта проекта. Что же послужило причиной удаления? На то называется две причины, одна политическая, вторая техническая, и какая внесла больший вклад - сложно сказать...
Следующая статья
Документы, вакансии и контакты