aradotso avatar

Gova Declarative Gui

Gova lets you build native desktop apps for macOS, Windows, and Linux using pure Go structs as components and explicit Scope-based state instead of hooks. You get hot reload via the CLI, platform-native dialogs that map to NSAlert and NSOpenPanel on Mac, and a single static binary from go build. The API sits on top of Fyne but hides it behind a declarative interface that feels more like SwiftUI than immediate-mode GUI code. Use it when you want cross-platform desktop tooling without Electron's weight or when you're already in the Go ecosystem and need something beyond terminal UIs. State persists across hot reloads, which makes iteration fast.

skills.sh installs
180
GitHub stars
26
last updated
Jun 3, 2026

Install

$ npx -y skills add aradotso/trending-skills --skill gova-declarative-gui --agent claude-code

Installs into .claude/skills of the current project.

Files

Gova Declarative GUI Framework

Skill by ara.so — Daily 2026 Skills collection.

Gova is a declarative GUI framework for Go that builds native desktop apps for macOS, Windows, and Linux from a single codebase. Views are plain Go structs, state is explicit via a Scope, and go build produces one static binary. Internally powered by Fyne (BSD-3), but the public API is stable and renderer-independent.


Install

go get github.com/nv404/gova@latest

Optional CLI:

go install github.com/nv404/gova/cmd/gova@latest

Prerequisites:

  • Go 1.26+
  • C toolchain: Xcode CLT (macOS), build-essential + libgl1-mesa-dev (Linux), MinGW (Windows)

Key CLI Commands

CommandPurpose
gova dev ./path/to/appHot reload — watch .go files, rebuild and relaunch on save
gova build ./path/to/appCompile to ./bin/<name> static binary
gova run ./path/to/appBuild and launch once, no file watching
go build -ldflags "-s -w"Stripped binary (~23 MB for simple apps)

Core Concepts

1. Components as Structs

Sponsors

Details

Repository
github.com/aradotso/trending-skills
First seen
Jun 3, 2026

More from aradotso/trending-skills

All 251

Recommended

1juliusbrussee avatarcavemanjuliusbrussee/cavemanUltra-compressed communication mode. Cuts output tokens 65% (measured) by speaking like caveman while keeping full technical accuracy. Supports intensity levels618.3Kskills.sh installs
2mattpocock avatargrill-memattpocock/skillsA relentless interview to sharpen a plan or design.1.5Mskills.sh installs
3shadcn avatarimproveshadcn/improveSurvey any codebase as a senior advisor and produce prioritized, self-contained implementation plans for OTHER models/agents to execute. Strictly read-only on s40Kskills.sh installs
4obra avatarsystematic-debuggingobra/superpowersUse when encountering any bug, test failure, or unexpected behavior, before proposing fixes326.7Kskills.sh installs
5forrestchang avatarkarpathy-guidelinesforrestchang/andrej-karpathy-skillsBehavioral guidelines to reduce common LLM coding mistakes through explicit assumptions, simplicity, and verifiable success criteria.17.9Kskills.sh installs
6vercel-labs avatarfind-skillsvercel-labs/skillsHelps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express int4.3Mskills.sh installs