MyGo · 原生桌面 · 明暗主题
Onevra原生桌面组件库
Onevra 是 MyGo 的组件库:主题化控件、窗口外壳、Lucide 图标,以及聊天、Markdown、代码、图表与关系图等复杂视图——一套专注的工具包,可按需取用。
go get github.com/oneo-me/onevra/source
组件库中已经实现的组件
以下控件现在都已实现,每个都附带包文档与测试,统一从 github.com/oneo-me/onevra/source/components 引入。
复杂视图位于各自独立的包中,见下一节。
浏览组件复杂视图,各自独立成包
除了单个控件,Onevra 还实现了应用真正需要的完整视图。每个视图都是独立包,自带文档与测试。
更少样板,更多产品
创建窗口,用 Onevra 控件构建内容,状态始终由你自己的值持有。
package main
import (
"log"
"github.com/egoist/mygo"
"github.com/egoist/mygo/ui"
"github.com/oneo-me/onevra/source/components"
"github.com/oneo-me/onevra/source/shells/plain"
"github.com/oneo-me/onevra/source/theme"
)
func main() {
mygo.App.WhenReady(func() {
shell := plain.NewShell(plain.ShellOptions{
Title: "Hello Onevra",
Theme: theme.Onevra,
Content: func(c *ui.Context) {
ui.Column(c).Fill().Padding(24).Children(func() {
components.Text(c, "Hello, Onevra!")
})
},
})
shell.Window().OnClosed(func() { mygo.App.Quit() })
})
if err := mygo.App.Run(); err != nil {
log.Fatal(err)
}
}跟随桌面的主题
Onevra 的调色板覆盖控件、外壳与窗口边框。切换一次外观,整个应用随之改变。
primary
secondary
muted
accent
border
foreground
- 暖色中性色,陶土强调色明暗两套调色板共享同一强调色系,深色模式会提亮强调色以保证可读性。
- 感知系统设置预设跟随桌面的明暗外观、文字缩放与高对比度设置。
- 一次切换,两种氛围选择浅色、深色或跟随系统,所有组件与原生窗口边框同步切换。
常见问题
在打开文档之前,先看几个简短的回答。