下拉刷新
Go 项目

这里是按照「分类」阅读往期的 HelloGitHub 月刊内容, 您目前在查看 HelloGitHub Go 项目 集合。

41
daytona
Star 3.8w
Vol.106
8 小时前

简化开发环境搭建的工具。该项目可以通过一条命令,快速创建一个配置好的开发环境,支持与主流 IDE 无缝集成,以及本地机器、远程服务器、云平台等多种基础设施。

daytona
Star 6.8k
Vol.106
1 年前

将 Lua 脚本嵌入 Go 程序。这是一个 Go 语言实现的 Lua 虚拟机和编译器,完全兼容 Lua5.1 语法。开发者可以通过简单的代码,将 Lua 脚本嵌入到 Go 应用中,适用于游戏开发、自动化工具和插件系统等需要脚本化支持的场景。

L := lua.NewState()
defer L.Close()
if err := L.DoString(`print("hello")`); err != nil {
    panic(err)
}
43
SamWaf
Star 1.3k
Vol.106
1 天前

开源的轻量级 Web 应用防火墙。这是一款完全开源的轻量级 Web 应用防火墙,支持私有化部署,提供 Bot 检测、URL 白名单、CC 防护、自定义防护规则等功能,适用于小型企业、工作室和个人网站。

SamWaf
Star 5.3k
Vol.105
13 天前

快速生成假数据的 Go 库。该项目是用于生成各种假数据的 Go 语言库,支持随机生成名字、地址、电话和日期等格式的数据。它默认不支持生成中文假数据,但可以通过自定义方式扩展或调整生成逻辑实现。

gofakeit.Name()             // Markus Moen
gofakeit.Email()            // alaynawuckert@kozey.biz
gofakeit.Phone()            // (570)245-7485
gofakeit.BS()               // front-end
gofakeit.BeerName()         // Duvel
gofakeit.Color()            // MediumOrchid
gofakeit.Company()          // Moen, Pagac and Wuckert
gofakeit.CreditCardNumber() // 4287271570245748
gofakeit.HackerPhrase()     // Connecting the array won't do anything, we need to generate the haptic COM driver!
gofakeit.JobTitle()         // Director
gofakeit.CurrencyShort()    // USD
45
hertz
Star 7k
Vol.105
3 天前

字节跳动开源的 Go 微服务 HTTP 框架。该项目是由 CloudWeGo 团队开发的高性能、易扩展的 Go 语言 Web 框架,可用于构建 RESTful API、微服务以及需要高吞吐量的 Web 应用。在字节跳动内部,Hertz 已被广泛应用,表现稳定可靠。

hertz
46
lima
Star 2w
Vol.105
1 天前

在 macOS 上轻松运行 Linux 虚拟机。这是一款在 macOS 上创建和管理 Linux 虚拟机的工具,它通过 QEMU 和 macOS 原生虚拟化技术,提供一个开箱即用、轻量级的 Linux 虚拟机环境,支持运行各种 Linux 应用和工具,以及 Docker、Podman、K8s 等容器。

# 安装
brew install lima
# 启动
limactl start
# 运行 Linux 命令
lima sudo apt-get install -y neofetch
lima neofetch
# 运行容器
lima nerdctl run --rm hello-world
kubectl apply -f ...
lima
Star 1.3w
Vol.105
1 年前

用几何图形生成图像。该项目是用 Go 语言开发的命令行工具,它通过图像处理算法,可将任意图像转换为仅由单一几何图形组成的图像。

primitive
48
zap
Star 2.4w
Vol.105
1 个月前

快速、结构化的 Go 日志库。该项目是 Uber 开发的一款高性能日志库,专为那些需要快速、结构化日志记录的场景而设计。与其他 Go 语言的日志库相比,zap 的性能更为优越,尤其是在需要频繁记录日志的高并发环境中。

logger, _ := zap.NewProduction()
defer logger.Sync() // flushes buffer, if any
sugar := logger.Sugar()
sugar.Infow("failed to fetch URL",
  // Structured context as loosely typed key-value pairs.
  "url", url,
  "attempt", 3,
  "backoff", time.Second,
)
sugar.Infof("Failed to fetch URL: %s", url)
zap
49
dpanel
Star 3.6k
Vol.104
5 天前

轻量级的 Docker 可视化管理面板。这是一款专为国内用户设计的 Docker 可视化管理面板,采用全中文界面。它安装简单且资源占用低,运行在容器内部对宿主机无侵入,支持容器管理、镜像管理、文件管理以及 Compose 管理等功能。

dpanel
Star 8.5k
Vol.104
3 个月前

快速生成 Go Web 项目结构的工具。这是一个用于快速搭建 Go 语言 Web 项目的命令行工具,集成了 Chi、Gin、Fiber、Echo 等多种流行的 Go 框架。它支持选择 MySQL、Postgres、Redis 等主流数据库,还提供了 WebSocket 和 Docker 等高级设置。用户只需选择技术栈,即可生成一套完整的 Go Web 项目架子。

go-blueprint