[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-1151":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":15,"stars7d":14,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":18,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":16,"starSnapshotCount":16,"syncStatus":14,"lastSyncTime":28,"discoverSource":29},1151,"gova","NV404\u002Fgova","NV404","declarative GUI framework for Go","https:\u002F\u002Fgova.dev",null,"Go",336,6,2,1,0,4,3,45.94,"MIT License",false,"main",true,[],"2026-06-12 04:00:08","# Gova\n\n**The declarative GUI framework for Go.** Build native desktop apps for macOS,\nWindows, and Linux from a single Go codebase — typed components, reactive\nstate, real platform dialogs, and one static binary. No JavaScript runtime, no\nembedded browser, no C++ toolchain to learn.\n\n[![Go Reference](https:\u002F\u002Fpkg.go.dev\u002Fbadge\u002Fgithub.com\u002Fnv404\u002Fgova.svg)](https:\u002F\u002Fpkg.go.dev\u002Fgithub.com\u002Fnv404\u002Fgova)\n[![Go Report Card](https:\u002F\u002Fgoreportcard.com\u002Fbadge\u002Fgithub.com\u002Fnv404\u002Fgova)](https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Fnv404\u002Fgova)\n[![CI](https:\u002F\u002Fgithub.com\u002Fnv404\u002Fgova\u002Factions\u002Fworkflows\u002Fci.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fnv404\u002Fgova\u002Factions\u002Fworkflows\u002Fci.yml)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue.svg)](LICENSE)\n\n> **Status:** pre-1.0. The API will shift before `v1.0.0`. Pin a tag in\n> production.\n\n```go\npackage main\n\nimport . \"github.com\u002Fnv404\u002Fgova\"\n\nvar Counter = Define(func(s *Scope) View {\n    count := State(s, 0)\n    return VStack(\n        Text(count.Format(\"Count: %d\")),\n        Button(\"+\", func() { count.Update(func(n int) int { return n + 1 }) }),\n        Button(\"-\", func() { count.Update(func(n int) int { return n - 1 }) }),\n    )\n})\n\nfunc main() { Run(\"Counter\", Counter) }\n```\n\n\u003Cp align=\"center\">\n  \u003Cimg\n    src=\"docs-site\u002Fpublic\u002Fscreenshots\u002Fcounter-example.png\"\n    alt=\"Counter example window on macOS\"\n    width=\"640\"\n  \u002F>\n\u003C\u002Fp>\n\n## Why Gova\n\n- **Components as structs.** Views are plain Go structs with typed prop fields;\n  defaults are zero values; composition is plain function calls. No magic\n  property wrappers, no string keys, no hook-ordering rules.\n- **Explicit reactive scope.** State, signals, and effects live on a `Scope`\n  you can see. No hidden scheduler, no re-render surprises, no Rx, no Redux.\n- **Real native integrations where it matters.** `NSAlert`, `NSOpenPanel`,\n  `NSSavePanel`, and `NSDockTile` badge\u002Fprogress\u002Fmenu on macOS through cgo.\n  Fyne fallbacks on Windows and Linux — same API everywhere.\n- **One static binary.** `go build` produces a single executable. No\n  JavaScript runtime, no embedded browser, no extra assets to bundle.\n- **Hot reload that actually reloads.** `gova dev` watches Go files, rebuilds\n  on save, and relaunches — with an opt-in `PersistedState` so UI state\n  survives the reload.\n- **Built on Fyne, but Fyne stays internal.** The public API is yours to rely\n  on. We swap out renderer details without breaking your code.\n\n## At a glance\n\n| Metric        | Value     | Notes                               |\n|---------------|-----------|-------------------------------------|\n| Binary size   | ~32 MB    | `counter` example, default build    |\n| Stripped      | ~23 MB    | `go build -ldflags \"-s -w\"`         |\n| Memory idle   | ~80 MB    | RSS, `counter` running              |\n| Go version    | 1.26+     | plus a C toolchain for cgo          |\n| License       | MIT       | no runtime fees                     |\n\nMeasured on macOS arm64 with Go 1.26.2. Numbers will vary by platform and\nfeature set.\n\n## Install\n\n```bash\ngo get github.com\u002Fnv404\u002Fgova@latest\n```\n\nOptional CLI for `dev` \u002F `build` \u002F `run`:\n\n```bash\ngo install github.com\u002Fnv404\u002Fgova\u002Fcmd\u002Fgova@latest\ngova dev .\u002Fexamples\u002Fcounter\n```\n\nPrerequisites: **Go 1.26+** and a C toolchain (Xcode CLT on macOS,\n`build-essential` + `libgl1-mesa-dev` on Linux, MinGW on Windows).\n\n## Docs\n\nFull documentation lives at **[gova.dev](https:\u002F\u002Fgova.dev)** (or run\n`npm run dev` inside `docs-site\u002F` for local browsing). Key sections:\n\n- [Getting started](https:\u002F\u002Fgova.dev\u002Fdocs\u002Fgetting-started\u002Finstallation)\n- [Core concepts](https:\u002F\u002Fgova.dev\u002Fdocs\u002Fconcepts\u002Fcomponents)\n- [State and effects](https:\u002F\u002Fgova.dev\u002Fdocs\u002Fstate\u002Fstate)\n- [Native dialogs](https:\u002F\u002Fgova.dev\u002Fdocs\u002Foverlays\u002Fnative-dialogs)\n- [Platform integration](https:\u002F\u002Fgova.dev\u002Fdocs\u002Fplatform\u002Fdock)\n- [CLI](https:\u002F\u002Fgova.dev\u002Fdocs\u002Fcli\u002Foverview)\n\n## Examples\n\nEvery example in [`examples\u002F`](.\u002Fexamples) is a runnable program:\n\n| Example       | What it shows                                          |\n|---------------|--------------------------------------------------------|\n| `counter`     | The minimum viable Gova app                            |\n| `todo`        | State, lists, forms                                    |\n| `fancytodo`   | Categories, derived state, richer layout               |\n| `notes`       | Nav, multi-view, stores                                |\n| `themed`      | Dark\u002Flight mode, semantic colors                       |\n| `components`  | `Viewable` composition, `ZStack`, `Scaffold`           |\n| `dialogs`     | Native dialogs, dock badge \u002F progress \u002F menu, app icon |\n\n```bash\ngo run .\u002Fexamples\u002Fdialogs\n```\n\n## Platform support\n\n| Feature                   | macOS                 | Windows         | Linux           |\n|---------------------------|-----------------------|-----------------|-----------------|\n| Core UI                   | Supported             | Supported       | Supported       |\n| Hot reload (`gova dev`)   | Supported             | Supported       | Supported       |\n| App icon (runtime)        | Supported             | Supported       | Supported       |\n| Native dialogs            | NSAlert \u002F NSOpenPanel | Fyne fallback   | Fyne fallback   |\n| Dock \u002F taskbar            | NSDockTile            | Planned         | Planned         |\n\n## CLI\n\nThe `gova` CLI ships alongside the framework.\n\n| Command       | Purpose      | Notes                                                      |\n|---------------|--------------|------------------------------------------------------------|\n| `gova dev`    | Hot reload   | Watch `.go` files, rebuild on save, relaunch the window    |\n| `gova build`  | Compile      | Static binary to `.\u002Fbin\u002F\u003Cname>`                            |\n| `gova run`    | Execute      | Build and launch once, no file watching                    |\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md). Tests are the contract:\n\n```bash\ngo test .\u002F...\n```\n\nIssues, discussions, and PRs all live on\n[GitHub](https:\u002F\u002Fgithub.com\u002Fnv404\u002Fgova). Security issues? See\n[SECURITY.md](SECURITY.md).\n\n## License\n\n[MIT](LICENSE). Gova is built on [Fyne](https:\u002F\u002Ffyne.io) (BSD-3), which ships\nwith the module as an internal dependency.\n","Gova 是一个用于 Go 语言的声明式 GUI 框架，旨在帮助开发者使用单一代码库构建跨平台（macOS、Windows 和 Linux）的原生桌面应用程序。其核心功能包括基于类型组件和响应式状态管理，支持真实的平台对话框，并且生成单一静态二进制文件，无需 JavaScript 运行时或嵌入式浏览器。此外，Gova 提供了热重载功能，能够自动检测代码变更并重新加载应用，同时保持用户界面的状态。适合需要快速开发跨平台桌面应用且偏好 Go 语言简洁性的场景，尤其是那些追求高性能与低资源占用的应用程序开发项目。","2026-06-11 02:41:56","CREATED_QUERY"]