[ANN] Bellui — a Go UI toolkit for desktop, mobile and web: Material Design 3, WebGPU rendering

129 views
Skip to first unread message

Benedicto Franco Jr

unread,
Oct 16, 2026, 9:50:57 AM (5 days ago) Oct 16
to golang-nuts
Hi Gophers,

Bellui is an open-source (BSD-3) UI toolkit for building desktop, mobile and web apps in Go from one codebase.

Website: https://bellui.com · GitHub: https://github.com/belluikit/bellui

Where it comes from

Bellui began as a fork of Fyne, and we're grateful for it: the plain-Go, no-markup approach is Fyne's. We wanted changes deep enough that they couldn't go upstream: a Material Design 3 component set, a new GPU backend, and a reworked package layout (geo / event / core). So it's now its own project.

Highlights

- WebGPU rendering by default: Metal on macOS/iOS, Vulkan on Linux/Android, D3D12 on Windows, WebGPU in the browser. OpenGL is still there with -tags gl.
- Material Design 3 components: navigation rails, bottom and side sheets, date and time pickers, light/dark schemes, accessibility support.
- Background work: goroutines hand UI updates to the main loop with bellui.Do / bellui.DoAndWait.
- Optional extensions: 27 chart types (including 3D and trading charts), a data grid with virtual scrolling, a DAG editor, a code editor, and FFmpeg-based video playback.
- Platforms: macOS, Windows, Linux (X11/Wayland), iOS and Android (tested on devices), and the browser.

Try it without writing code: the gallery app shows every widget: https://bellui.com/gallery/

Hello world

package main

import (
    "github.com/belluikit/bellui"
    "github.com/belluikit/bellui/app"
    "github.com/belluikit/bellui/container"
    "github.com/belluikit/bellui/widget"
)

func main() {
    a := app.New()
    w := a.NewWindow("Hello")
    hello := widget.NewLabel("Hello Bellui!")

    w.SetContent(container.NewVBox(
        hello,
        widget.NewButton("Hi!", func() {
            hello.SetText("Welcome :)")
        }),
    ))
    bellui.ShowAndRun(w)
}


You'll need Go 1.25+ and a C compiler. Getting started: https://bellui.com/develop/

Feedback welcome, especially on API ergonomics and how WebGPU rendering behaves on your hardware.

Thanks,

Reply all
Reply to author
Forward
0 new messages