LedoCorp · UI toolkit · 0.8.0

Gru

Build desktop UI in Go without dragging a whole browser stack along for the ride. Compose widgets, run a retained-mode frame loop, draw with Raylib. Optional WebView2 when you need an HTML panel on Windows.

Docs GitHub

What it is

Gru (GRU) is a retained-mode UI toolkit for desktop apps written in Go. The public package is github.com/ledocorp/gru/ui: widgets, layout, text, theme, window chrome, and an inspector. You import it like any other module, then either copy cmd/hello or scaffold with the gru CLI.

Primary platform today is Windows. Linux builds exist for basic samples. License is GPLv3. Governance is BDFL (no public PRs). Current release is 0.8.0 (first public cut was 0.7.0). Quick refs: cheatsheet · Gru Notepad.

How it works

What you use it for

Gru Notepad

Gru Notepad is a product-shaped showcase of the toolkit: edge shell, editor, multi-doc sessions, markdown preview, syntax highlight, and spell check in one thin host. It lives in a separate repository and depends on this module (require github.com/ledocorp/gru).

Showcase page with clips · shawnlondono/gru-notepad

Try it

Grab a Go toolchain and open a window in a minute. WebView samples also need the WebView2 Runtime (Windows). Start from the getting started guide or v0.8.0.

go get github.com/ledocorp/gru@v0.8.0

# from a clone of github.com/ledocorp/GRU:
go run ./cmd/hello
go run -tags webview2 ./cmd/webviewhello
go run -tags grudemo .          # scenes; Tab / F12
go run ./cmd/gru new myapp

GPLv3 · LedoCorp · version 0.8.0

What’s in the package