搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

lobehub/lobe-mygo

开发工具

将 Lobe UI 组件与设计令牌带到用 MyGo 构建的原生 Go 桌面应用的 UI 工具库。

186
3
Go
MIT
创建于 3 天前

项目介绍

Lobe MyGo 把 Lobe UI 的设计语言移植到 MyGo 的原生 Go UI 上,让桌面应用无需 HTML、JavaScript 或 webview 就能使用类似 React 的组件。它提供 70 多个组件,覆盖按钮、输入框、选择控件、展示、反馈、浮层、导航、布局、代码和 Markdown,并包含由 @lobehub/ui 生成、明暗自动适配的主题令牌,弹簧与共享元素过渡动画,以及 2300 多个以 Go 函数形式提供的 Lucide 图标。适合使用 MyGo 构建原生桌面界面的 Go 开发者。

库本身是纯 Go、无 cgo,按项目说法可生成较小的跨平台二进制并从任意机器交叉编译。令牌系统让 Go 应用与 React 应用共享颜色、圆角、字号和外观行为。

快速使用

前提是 Go 1.27 或更高版本,并已有基于 MyGo 的项目。

go get github.com/lobehub/lobe-mygo

README 的最简示例在每个视图顶部调用 theme.Apply(c),用 theme.TokensOf(c) 读取设计令牌,并在 MyGo 窗口中使用 action.Button:

package main

import (
	"fmt"
	"log"

	"github.com/egoist/mygo"
	"github.com/egoist/mygo/ui"
	"github.com/lobehub/lobe-mygo/pkg/action"
	"github.com/lobehub/lobe-mygo/pkg/theme"
)

var count int

func view(c *ui.Context) {
	theme.Apply(c)
	ui.Column(c).Fill().Center().Gap(12).Background(theme.TokensOf(c).BgContainer).Children(func() {
		if action.Button(c, "Hello Lobe", action.ButtonProps{Variant: action.Primary}).Clicked() {
			count++
		}
		ui.Text(c, fmt.Sprintf("Clicked %d times", count))
	})
}

func main() {
	mygo.App.WhenReady(func() {
		mygo.NewWindow(mygo.WindowOptions{Title: "Hello Lobe", Width: 480, Height: 320, Content: ui.View(view)})
	})
	if err := mygo.App.Run(); err != nil {
		log.Fatal(err)
	}
}

浏览组件可从入门文档进入在线站点,或在本地运行原生目录。克隆仓库后,go run ./catalog 打开目录窗口,go run ./catalog button/basic 打开单个组件页。要运行基于 WebAssembly 的文档站,执行 bun install && bun run dev;组件演示位于 catalog 目录。

使用约束

  • 最低要求 Go 1.27,并依赖 MyGo 的原生 UI。
  • 这是 MyGo 的 UI 层而非独立 GUI 框架,需要已有的 MyGo 应用结构。
  • 本地开发文档站需要额外安装 Bun。
  • 项目采用 MIT 许可证 (28)。
  • README 称无 cgo 且支持交叉编译,但未说明具体操作系统或 GPU 后端的兼容范围。

HotRepo 点评

Lobe MyGo 在 2026-11-09 进入 HotRepo 的 Go 新项目榜,记录的增长窗口内新增 104 Star、1 Fork。对一个新仓库来说这是早期关注,实际价值取决于你是否需要 Lobe UI 的观感和令牌兼容。技术上最值得关注的是与 Lobe UI 共享的设计令牌层和纯 Go 渲染路径;接下来应查看组件目录,确认你需要的那部分组件已经具备。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。

相关推荐

  1. vivaui/viva用 Go 构建原生桌面应用,直接走各平台自己的窗口与 GPU API,不依赖 WebView,也不打包运行时。Go101
  2. yappologistic/CUIC 语言原生 UI 组件库,约 190 个组件,支持 Windows、macOS 和 Linux 跨平台桌面应用。C625
  3. Caho1/open-claude-ui把 Claude 官方桌面端的设计系统与动效物理逆向还原成 React 组件库,供人直接抄用。TypeScript1,398
  4. oneo-me/nsgo用 Go 编写跨平台应用,各平台以自身原生视图渲染界面。Go134
  5. egoist/mygo-music用 Go 编写的原生桌面音乐播放器,本地文件开箱即用,并通过 JavaScript 插件扩展在线曲库与账号。Go147