go-awesome
Go 语言优秀资源整理,为项目落地加速🏃
This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.
General
Awesome
Awesome Go
A curated list of awesome Go frameworks, libraries, software and resources.
golang-open-source-projects
含描述的中文版 Awesome Go
Awesome Go Storage
Go 存储相关开源项目
awesome-go-China
专门收集华人写的开源项目
Go Patterns
Go 版本的设计模式
go-algorithms
Go 版本的数据结构和算法
Go 学习之路
Go 学习资料汇集
VisuAlgo
数据结构和算法动态可视化
大牛/组织 >大牛
大牛/组织 >组织
文档
Proposing Changes to Go
Go 语言设计文档
Go 101
(中文版)
Go 语言高级编程
books: 《Go语言高级编程》开源图书,涵盖CGO、Go汇编语言、RPC实现、Protobuf插件实现、Web框架实现、分布式系统等高阶主题(完稿)
Go 语言标准库
在线阅读
《The Way to Go》中文版
《The Way to Go》中文译本,中文正式名《Go 入门指南》
Go 语言圣经(中文版)
books: Go语言圣经中文版 🇨🇳
Go Web 应用开发
(cc-sa) - A golang ebook intro how to build a web with golang
Go database/sql tutorial
Introduction to database/sql.
学习 Go 语言
一本学习 Go 语言的免费电子书。
Go database/sql tutorial
Go 数据库(database/sql)开发使用教程
Go Web Examples
Go Web 开发示例
Go Assembly
通过示例介绍 Go 汇编功能
Ultimate Go
终极 Go 学习指南,包含大量文档化的代码和程序分析
Go 教程
腾讯云开发者手册
golang-notes
Go 源码阅读笔记
The Little Go Book
(中文版)
go-internals
深入理解 Go
Learn Go with Tests
Learn Go with test-driven development.
7天用Go从零实现系列
7 days golang programs from scratch (web framework Gee, distributed cache GeeCache, object relational mapping ORM framework GeeORM, rpc framework GeeRPC etc) 7天用Go动手写/从零实现系列
Go 语言高性能编程
high performance coding with golang(Go 语言高性能编程,Go 语言陷阱,Gotchas,Traps)
Golang - 100天从新手到大师
某培训机构的部分教程内容
hoanhan101/algo
107+ 编码面试问题,包括详细的解决方案,测试用例和程序分析
over-golang
Go 学习笔记
over-algorithm
Go 算法笔记
go-leetcode
LeetCode 实现
玩转 GO
《Mastering GO》中文译本
leetcode-cookbook
LeetCode in Go
Go Concurrency Patterns
Go 并发模式场景集合
yezihack/algo
数据结构与算法
golang-cheat-sheet-cn
GitHub上最流行的Golang代码速查表中文翻译版本
指南
Uber Go Style Guide
Patterns and conventions used in Go code at Uber.
Go Code Review Comments
List of projects on the Go community wiki.
go-perfbook
编写和优化Go代码
Practical Go: Real world advice for writing maintainable Go programs
(Go 语言实践:编写可维护的程序的建议)
Go 安全指南
腾讯发布的《代码安全指南》Go 语言篇
Go Concurrency Guide
Practical concurrency guide in Go, communication by channels, patterns
Go Recipes
一些技巧
文章
Go Training
大量优质 Go 相关文章、视频等资料
Go 夜读
Go 标准包、开源项目源代码阅读讲解
Go-Questions
Go 语言学习入门和进阶知识
The Evolution of a Go Programmer
Go 程序员的进化之路
付费教程
成品项目
studygolang
Go 语言中文网
mkcert
生成本地 HTTPS 加密证书的工具
cfssl
Cloudflare 开源的 PKI 和 TLS 工具集
NYADB2
Go 实现的关系型数据库, 值得用于学习
EiBlog
博客
pan-light
不限速的百度网盘客户端, 基于 Go + Qt5 开发
BaiduPCS-Go
百度网盘客户端(命令行)
daily-warm
每天定时发邮件给你关心的人
pipe
博客平台
mdr
命令行下的 Markdown 阅读工具
miniflux
Feed 阅读器
golinks
创建自定义书签、命令、搜索等
链滴笔记
桌面端笔记应用
bbs-go
开源社区
OpenSCRM
基于Go和React的企业微信私域流量管理系统
Answer
问答社区
1Panel
Linux 服务器运维管理面板
Artalk
自托管评论系统
成品项目 >静态网站生成器
学习项目
1m-go-websockets
该项目演示了如何用 Go 编写一个可以提供超过一百万个 websockets 连接、运行内存小于 1GB 的服务器
Go by Example
通过实例学习 Go
IAM
身份识别与访问管理系统(教学项目)
100-go-mistakes
100 个 Go 常见错误
开源类库 >Web 框架
Macaron
一款具有高生产力和模块化设计的 Go Web 框架 国产
Beego
一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架 国产
Faygo
国产
Teleport
Socket 框架
QOR
系列应用开发组件包
DotWeb
国产
REST Layer
REST API framework
Honeytrap
Opensource system for running, monitoring and managing honeypots.
Ponzu
Headless CMS with automatic JSON API. Featuring auto-HTTPS from Let's Encrypt, HTTP/2 Server Push, and flexible server framework written in Go.
utron
A lightweight MVC framework for Go(Golang) (archived)
Buffalo
快速生成 Web 项目的开发工具
go-web-framework-benchmark
This benchmark suite aims to compare the performance of Go web frameworks.
pingcap/fn
支持绑定任何方法,构建成 POST+JSON 接口
flamego
unknwon 开发的又一款 Web 框架
rk-boot
A bootstrapper library for building enterprise go microservice with Gin and gRPC quickly and easily.
开源类库 >业务框架
YAO
使用 JSON 即可创建数据库模型、编写 API 接口、描述管理后台界面的应用引擎
GoAdminGroup/go-admin
后台管理快速开发框架,与 laravel-admin 类似
wenjianzhang/go-admin
基于 Gin + Vue 实现的后台框架
gin-vue-admin
基于 Gin + Vue 实现的后台框架
nging
Go语言通用后台管理框架
snake
业务API框架
PocketBase
带有后台管理面板、文件和权限管理、集成 SQLite 数据库的单一文件后端服务开发框架,支持 Dart 和 JS SDK 快速开发 APP
DoTenX
低代码框架
开源类库 >项目骨架
Standard Go Project Layout
Go 项目目录结构示例
go-starter
Adobe 的 Go 工程模板
go-clean-arch
Go (Golang) Clean Architecture based on Reading Uncle Bob's Clean Architecture
go-rest-api
Go RESTful API Starter Kit
Create Go App CLI
通过命令行创建前后端项目的开发骨架
clean-gin
基于 Gin 构建的整洁架构项目骨架
golang-repo-template
一个包含了很多实践的项目模板
开源类库 >DDD 框架
Wild Workouts
DDD、整洁架构、CQRS的示例项目
Clean Architecture in Go
整洁架构示例
freedom
基于六边形架构的框架
esim
基于六边形架构的微服务框架
go-cleanarch
Go 整洁架构规则校验工具
开源类库 >TCP 框架
zinx
TCP并发服务器框架
开源类库 >中间件
开源类库 >并发
SizedWaitGroup
并发控制
concurrent
concurrency utilities
开源类库 >命令行
urfave/cli
命令行程序构建工具
flaggy
命令参数解析
pflag
命令行参数处理
clop
命令行解析包
mow.cli
Go library for building CLI applications with sophisticated flag and argument parsing and validation.
progressbar
在终端上输出进度条
cheggaaa/pb
终端进度条
Color
命令行文字颜色
gookit/color
命令行色彩使用库
tui
终端 UI
termenv
终端应用程序的高级 ANSI 样式和颜色支持
asciigraph
在终端中绘制 ASCII 字符的图表
tablewriter
终端中输出表格内容
PIXterm
在命令行终端中绘图
WTF
一个命令行的信息仪表盘,可以定制显示内容
termdash
基于 Go Terminal 的仪表板系统
gum
A tool for glamorous shell scripts 🎀 (written in go).
tview
Terminal UI
ASCIIPlayer
在终端中通过 ASCII 输出图片或视频,支持 png、jpeg、gif、mp4、avi 等格式
go-pretty
终端渲染表格、列表、进度条等
tcell
Tcell is an alternate terminal package, similar in some ways to termbox, but better in others.
gosu
以指定的用户权限来运行脚本
gotop
类 top 系统监控显示
go-colorable
Colorable writer for Windows
go-isatty
TTY 环境判断
go-daemon
daemon 进程包
pty
PTY for Go
vtclean
从终端输出字符串中解析出纯文本
Survey
交互式输入
开源类库 >终端工具
开源类库 >路由
HttpRouter
High performance router. Use this and the standard http handlers to form a very high performance web framework.
mux
URL 路由和调度器
gocraft/web
Mux and middleware package in Go.
go-querystring
转换结构体为URL请求参数
gorilla/schema
converts structs to and from form values
rewrite
rewrite 中间件
BunRouter
支持中间件、错误处理、路由优先级、兼容 net/http 接口
开源类库 >网络
RoadRunner
PHP 应用服务器、进程管理器、负载均衡,用于替代 Nginx + FPM
FrankenPHP
PHP 应用服务器
GoReplay
流量收集&回放
Sharingan
滴滴开源的流量录制回放工具
Glorp
HTTP 拦截&重放的 CLI 工具
p2pspider
种子嗅探器
rain
BitTorrent 客户端和库
httpteleport
Teleports 10Gbps http traffic over 1Gbps networks
FIND3
WiFi 设备发现
ggz
短网址服务
httpstat
显示 HTTP 请求链路详情的工具,便于我们看到请求耗时在什么地方
grab
文件下载
go-getter
可使用 URL 作为输入的主要形式从各种来源下载文件或目录
go-netty
网络框架
yamux
Multiplexer
goftp
FTP 客户端
SFTPGo
功能齐全且可高度配置的SFTP服务器,可选择支持HTTP/S、FTP/S和WebDAV。支持的存储后端包括:本地文件系统、加密的本地文件系统、S3(兼容)对象存储、Google Cloud Storage、Azure Blob Storage以及其他SFTP服务器。
evio
事件驱动网络框架(reactor 模式)
gaio
事件驱动网络框架(proactor 模式)
httpretty
在终端上漂亮地打印出 HTTP 请求
lossy
模拟 net.PacketConn 和 net.Conn 接口的带宽,延迟和数据包丢失
go-libp2p
P2P
go-ipfs-api
IPFS
gomobile-ipfs
为移动终端提供IPFS网络访问支持
go-multiaddr
multiaddr
gliderlabs/ssh
像 net/http 一样轻松搭建 SSH 服务器
netaddr
网络地址处理
sx
网络扫描命令工具
echoip
IP 地址查找服务
EasyTCP
TCP Server 框架
cmux
监听同一个端口,启动多种协议服务
GeoIP2 Reader for Go
解析&读取 MaxMind GeoLite2 和 GeoIP2 数据库
dns.toys
DNS 服务器
Apache Traffic Control
CDN 流量控制
NextTrace
可视化路由追踪工具
pget
文件下载工具,可多连接下载
CloudflareSpeedTest
测试 Cloudflare CDN 延迟和速度,获取最快 IP
go-ldap
Basic LDAP v3 functionality for the GO programming language.
GLAuth
LDAP Server
gldap
LDAP Service
Caddy
类似 Nginx 的 Web 服务器
snail007/goproxy
golang 实现的高性能代理服务器
ProxyPool
采集免费的代理资源为爬虫提供有效的IP代理
nps
一款轻量级、高性能、功能强大的内网穿透代理服务器
V2Ray
is a platform for building proxies to bypass network restrictions and protect your privacy. See more TransparentTorProxy is a Linux CLI utility that transparently routes all system traffic through the Tor network.
V2Fly
V2Ray 的社区版本
Tailscale
WireGuard 解决方案
Clash
支持多种协议的多平台代理客户端
elazarl/goproxy
HTTP 代理
oxy
Go middlewares for HTTP servers & proxies
ouqiang/goproxy
Go HTTP(S)代理库, 支持中间人代理解密HTTPS
pgrok
提供给穷人的内网穿透
开源类库 >HTTP压测
bombardier
Web 压测工具
go-wrk
a HTTP benchmarking tool based in spirit on the excellent wrk tool (wg/wrk), written in Go (golang)
plow
A high-performance HTTP benchmarking tool with real-time web UI and terminal displaying, written in Go (golang)
Ddosify
High-performance load testing tool, written in Go (golang)
开源类库 >HTTP
开源类库 >WebSocket
gorilla/websocket
Package gorilla/websocket is a fast, well-tested and widely used WebSocket implementation for Go.
nhooyr/websocket
官方推荐的包
websocketd
Go 开发的一键搭建 WebSocket 服务器命令行工具
ws
WebSocket 开发包
neffos
一个快速且可扩展的 WebSocket 框架
开源类库 >即时通信
开源类库 >网关
GoKu API Gateway CE
eoLinker 开源的 API 网关
Easegress
A cloud native high availability/performance traffic orchestration system with observability and extensibility.
Manba
HTTP API Gateway
Tpk
An enterprise-grade, open-source gateway supporting REST, GraphQL, TCP, and gRPC with advanced rate limiting and analytics.
BFE
基于百度统一接入前端开源的七层流量接入系统
开源类库 >序列化
vmihailenco/msgpack
支持 msgpack
go/codec
支持 msgpack/binc/cbor/json
golang/protobuf
Go 版本的 Protocol Buffers
gogo/protobuf
golang/protobuf 的扩展替代品
Objx
操作 map, slice, JSON 等数据的包
msgp
MessagePack 代码生成器
Buf
protoc 替代品
protoc-gen-doc
Google Protocol Buffers 文档生成插件,支持 HTML、JSON、DocBook、Markdown 和自定义模板
开源类库 >解压缩
开源类库 >RPC
Go gRPC Middleware
gRPC 常用中间件
gorpc
Simple, fast and scalable RPC library for high load.
gorilla/rpc
构建基于 HTTP 的 RPC 服务,比如 JSON-RPC
Lile
gRPC 服务构建包
rpcx
Best microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱! build for cloud!
Twirp
基于 Protobuf 的 RPC 框架,与 gRPC 类似
dubbo-go
Dubbo Go 版本
Kitex
star:7839 A high-performance and strong-extensibility Golang RPC framework that helps developers build microservices. If the performance and extensibility are the main concerns when you develop microservices, Kitex can be a good choice.
protoc-gen-doc
Google Protocol Buffers 文档生成插件,支持 HTML、JSON、DocBook、Markdown 和自定义模板
gRPC-Gateway
读取 gRPC 服务定义并生成一个反向代理服务器,同时提供 gRPC 和 RESTful 风格的 API
开源类库 >邮件
gomail
邮件发送包
Go-Guerrilla
SMTP 邮件服务器
jordan-wright/email
A robust and flexible email library for Go.
Pop
邮件发送工具,支持交互式和参数式
email-verifier
邮箱校验,无需发送邮件
开源类库 >消息队列
开源类库 >文件/存储
fsnotify
文件系统监控工具
reflex
监听文件变更并执行命令
gohttpserver
HTTP 静态文件服务器
Excelize
360 开源的 Excel 工具包
gopdf
PDF 生成
rsc/pdf
PDF reader
go-fastdfs
分布式文件存储服务
Dragonfly
基于 P2P 的分布式文件系统
filetype
检测文件类型
fsync
文件/目录同步
filebrowser
Web File Browser
Bigfile
文件传输管理系统
go-app-paths
跨平台检索目录文件
copy
拷贝文件夹
CasaOS
家庭云系统
AList
支持多存储的文件列表程序
UniPDF
PDF 读写处理
mimetype
MIME 类型与文件扩展检测
gocryptfs
加密 overlay 文件系统
开源类库 >模板引擎
goTemplateBenchmark
给各 Go 模板引擎做性能测试,当然也就包含了最全的模板引擎包
amber
HTML 模板引擎
fasttemplate
Simple and fast template engine for Go
quicktemplate
Fast, powerful, yet easy to use template engine for Go. Optimized for speed, zero memory allocations in hot paths. Up to 20x faster than html/template
Sprig
常用模板方法
开源类库 >代码生成
开源类库 >文本处理
Blackfriday
Markdown 解析器
Lute
结构化的 Markdown 引擎
docx2md
转换 Word 为 Markdown
glamour
命令行下渲染 Markdown
go-md2man
转换 Markdown 为 man 手册内容
html-to-markdown
转换 HTML 为 Markdown
DOM
HTML DOM 节点操作
obelisk
保存 Web 网页为 HTML 单页面
html2text
HTML 转 text
go-readability
让 HTML 可读性更高
gomponents
声明式视图组件,可以渲染成 HTML5
daz
HTML 组件组合,渲染 HTML
html-strip-tags-go
去除 HTML 标签
bluemonday
XSS 探测
cascadia
CSS 选择器
htmlquery
XPath 语法查询 HTML
xmlquery
XPath 语法查询 XML
xpath
XPath 语法
css
CSS 选择器
go-runewidth
字符长度计算
gpy
Go 语言汉字转拼音工具
go-hashids
hashids 的 Go 版本
go-pinyin
汉语拼音转换工具 Go 版
mahonia
字符集编码转换
pangu.go
Go 版本的 pangu,给中英文之间加空格
goorgeous
A Go ORG syntax parser to HTML
sergi/go-diff
Go 版本的 diff 工具包
sourcegraph/go-diff
Go 版本的 diff 工具包
Chroma
代码语法高亮
syntaxhighlight
代码高亮
golang/freetype
Freetype font rasterizer
prose
natural language processing library
Inflection
Pluralizes and singularizes English nouns
autocorrect
自动给中英文之间加入合理的空格并纠正专用名词大小写
etree
XML 解析&生成
feeds
RSS 内容生成
sitemap
sitemap.xml 生成
yarr
RSS 阅读软件
gogrep
通过语法树搜索 Go 源码
PipeIt
文本转换,清理和提取工具
regexp2
全功能正则表达式引擎。如果标准库的 regexp 满足不了你,可以尝试使用 regexp2
html2article
基于文本密度的 html2article 实现
hostctl
hosts 命令行管理工具
go-shellwords
解析命令行中字段
woke
检查文本文件中是否存在歧视词汇
go-password-validator
密码强度校验器
xurls
从文本中提取 URL
whatlanggo
自然语言探测
go-enry
检测编程语言
fuzzy
字符串模糊匹配
godlp
数据脱敏
Zoekt
文本搜索引擎
开源类库 >文档
swag
Swagger for Go
gin-swagger
Swagger for Gin
go-swagger
Swagger 2.0 implementation for go
开源类库 >数学计算
开源类库 >日期时间
开源类库 >配置
go-yaml/yaml
YAML support for the Go language. (archived)
fig
Tiny library for reading configuration from a file and from environment variables (with validation & defaults).
HCL
configuration language
koanf
Simple, extremely lightweight, extensible, configuration management library for Go. Supports JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.
go-toml
TOML
butler
Adobe 开源的配置管理系统
envsubst
环境变量替换
开源类库 >爬虫
Crawlab
基于Golang的分布式爬虫管理平台,支持Python、NodeJS、Go、Java、PHP等多种编程语言以及多种爬虫框架
Colly
网络爬虫框架
Pholcus
支持分布式的高并发、重量级爬虫软件
go_spider
[爬虫框架 (golang)] An awesome Go concurrent Crawler(spider) framework. The crawler is flexible and modular. It can be expanded to an Individualized crawler easily or you can use the default crawl components only.
Creeper
The Next Generation Crawler Framework (Go).
Geziyor
支持 JS 渲染的快速爬虫框架
Apollo
一个爬虫工具
ferret
声明式 Web 数据抓取
gocrawl
Polite, slim and concurrent web crawler.
Antch
A fast, powerful and extensible web crawling & scraping framework.
开源类库 >数据库
pingcap/parser
兼容 MySQL 的 SQL 解析
xsqlparser
SQL 解析
sqlparser
SQL 解析
vitess-sqlparser
SQL 解析
dbml-go
DBML 解析
go-saga
Saga 分布式事务实现
DTM
跨语言的分布式事务管理服务,支持TCC、Saga、XA等
gorm2sql
根据 Model Struct 生成建表语句
gorm-sharding
基于 Conn 层做 SQL 拦截、AST 解析、分表路由、自增主键填充,对使用者透明
Xorm
Simple and powerful ORM for Go. (Support: MySQL, MyMysql, PostgreSQL, Tidb, SQLite3, MsSql and Oracle).
XormPlus
Xorm 的定制增强版本
dbq
数据库操作
gendry
滴滴开源的SQL Builder
ozzo-dbx
star:663 Powerful data retrieval methods as well as DB-agnostic query building capabilities.
qb
the database toolkit for go
globalsign/mgo
The MongoDB driver for Go
kingshard
MySQL Proxy
SOAR
对SQL进行优化和改写的自动化工具
SQLE
SQL 审核工具
SQLer
write APIs using direct SQL queries with no hassle, let's rethink about SQL
gocraft/dbr
Additions to Go's database/sql for super fast performance and convenience.
Gaea
小米开源的基于 MySQL 协议的数据库中间件
OctoSQL
支持多数据库的 SQL 查询工具
ent
An Entity Framework For Go
godb
a Go query builder and struct mapper
SQLittle
纯读取 SQLite 文件
Bifrost
MySQL 同步到 Redis、ClickHouse 等服务的异构中间件
elasticsql
转换 SQL 成 Elasticsearch DSL
POP
基于 sqlx 封装的数据库 ORM 工具
REL
Modern Database Access Layer for Go
RDB
Redis RDB 文件解析和生成工具,支持转 JSON、转 AOF、寻找 Big Key、生成 RDB 文件及绘制内存火焰图等功能
Go-MySQL-Driver
MySQL 驱动
go-mssqldb
MSSQL 驱动
mongo-go-driver
MongoDB 官方出品的 Go 语言驱动
qmgo
MongoDB 客户端
clickhouse-go
ClickHouse 官方 Go 语言客户端
go-clickhouse
ClickHouse 客户端
go-sqlite3
SQLite3 驱动
gohbase
HBase 客户端
rueidis
Redis 客户端
redsync
基于 Redis 的分布式锁
redislock
基于 Redis 的分布式锁
Tiny RDM
Redis 桌面客户端
Prometheus
服务监控系统 & 时间序列数据库
tstorage
时间序列数据库
CockroachDB
分布式 SQL 数据库
RadonDB
基于 MySQL 研发的新一代分布式关系型数据库
AresDB
Uber 开源的 GPU 驱动的实时分析存储&查询引擎
LBADD
用 Go 实现的分布式 SQL 数据库
go-memdb
建立在不可变 Radix 树上的内存数据库
VectorSQL
应用于 IoT 和大数据的 DBMS 数据库,类似于 ClickHouse
TinySQL
迷你分布式关系型数据库
Redcon
兼容 Redis 协议的自定义 Redis 服务,采用 BuntDB 和 Tile38 实现存储
genji
文档内嵌型数据库
rosedb
简洁、高效的 KV 数据库,支持多种数据结构
mandodb
一个示例项目,作者介绍如何从零开始实现一个小型的时序数据库
go-mysql-server
解析 MySQL 协议并优化 SQL 的数据库引擎
FerretDB
MangoDB 替代品
NutsDB
可持久化、事务的内嵌 KV 数据库
开源类库 >缓存
GCache
An in-memory cache library for golang. It supports multiple eviction policies: LRU, LFU, ARC
go-cache
KV 内存缓存
gomemcache
Memcache 客户端
cache2go
An in-memory key:value cache which supports automatic invalidation based on timeouts.
fastcache
fast thread-safe inmemory cache for big number of entries. Minimizes GC overhead.
FreeCache
A cache library for Go with zero GC overhead.
groupcache
分布式缓存
cachego
支持 Redis、Bolt 等缓存接口
开源类库 >搜索推荐
wukong
全文搜索引擎
go-elasticsearch
官方 ES 客户端
go-mysql-elasticsearch
Sync MySQL data into elasticsearch
sego
Go 中文分词
Riot
全文搜索引擎
simplefts
超简单的全文搜索引擎实现
Blast
全文搜索(Archived)
Fuzzy Search
文本模糊搜索
gofound
全文搜索引擎
ZincSearch
全文搜索引擎
Bluge
文本分词
开源类库 >表单
validator
100:Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving
ozzo-validation
使用代码指定规则,而非Tag
go-tagexpr
字节跳动开源的结构体标签表达式解释器
govalidator
[Go] Package of validators and sanitizers for strings, numerics, slices and structs
开源类库 >Auth
Casbin
权限控制管理
pam-ussh
Uber's SSH certificate pam module
kataras/jwt
JWT 轻量级实现
cristalhq/jwt
star:687 Safe, simple, and fast JSON Web Tokens for Go.
sessions
后端 SESSION 服务
securecookie
cookie 加密/解密
branca
号称比 JWT 更安全的 token 解决方案
gin-jwt
Gin 框架的 JWT 中间件
Authboss
Web Auth 系统
开源类库 >加密/解密
开源类库 >视频
开源类库 >图形处理
barcode
条形码/二维码生成器
gmfs
图片操作、裁剪、管理服务器
besticon
favicon 服务
Caire
图片操作库
gocaptcha
验证码生成
go-is-svg
校验是否为 SVG 图片
identicon
根据用户的 IP 、邮箱名等任意数据为用户产生漂亮的随机头像
prominentcolor
识别图片的主要颜色
dchest/captcha
生成和验证图片或音频验证码
primitive
用原始几何图形绘制图形
orly
生成你自己的O'RLY动物书封面
smartcrop
智能裁剪图片
gift
图片滤镜
Germanium
给代码生成图片
Go Graphics
2D 图片渲染
canvas
矢量图绘制
formulae
数学公式解析、计算、图表绘制
Triangula
给图片增加三角形纹样风格的滤镜
D2
一种将文本转换成图形的图表脚本语言
ImGo
简洁、链式调用的图像处理库
Invoice
发票生成工具,可通过参数和配置文件进行创建和管理各种类型的发票
go-face
面部识别
开源类库 >图表
go-echarts
Echarts 图表库
gonum/plot
图形绘制
pinhole
3D 线框图绘制
globe
地球线框图绘制
ink
Go 中的 2D 图形框架
go-plantuml
基于 Go 源码生成 plantuml 图
go-diagrams
通过代码生成图表
GoCity
3D 展示城市
开源类库 >构建编译
GoReleaser
Go 多平台二进制文件打包、并支持发布到 Homebrew 的工具
goxc
跨平台编译工具(因 1.5 版本开始已自带交叉编译,故已不再维护)
codegangsta/gin
热编译工具
gowatch
热编译工具
Fresh
热编译工具
dh-make-golang
自动构建 Debian 包
gobinaries
不用安装Go就能编译安装Go编写的程序
nFPM
deb、rpm、apk 等打包工具
Gox
Go 跨端编译工具
gobfuscate
混淆代码
go-appimage
Go 语言实现 AppImage 打包工具
pkger
将静态文件打包成 Go 二进制文件
mewn
静态文件嵌入打包到二进制文件
statik
静态文件嵌入
go.rice
go.rice is a Go package that makes working with resources such as html,js,css,images,templates, etc very easy.
go-bindata
将静态文件转换成 Go 代码文件
vfsgen
将静态文件打包成 http.FileSystem 类型进行访问
packr
The simple and easy way to embed static files into Go binaries. (archived)
开源类库 >优雅升级
tableflip
Web 服务升级
selfupdate
二进制文件自动升级
overseer
Monitorable, gracefully restarting, self-upgrading binaries in Go (golang)
go-github-selfupdate
依托 GitHub 自动升级
开源类库 >代码分析
reviewdog
Code Review 机器人
GolangCI-Lint
代码质量检查分析工具
Staticcheck
一系列的 Go 代码静态分析工具
Golint
Google 官方出品的代码质量检测工具
GoReporter
Count the maxdepth of go functions. It's helpful to see if a function needs to be splitted into several smaller functions, for readability purpose.
go-critic
Go source code linter that maintains checks which are currently not implemented in other linters.
gocloc
分语言代码行数统计
coca
代码统计分析
Go Report Card
Go 项目质量分析报告工具
ddsv-go
死锁检测工具
golang/perf
官方性能量化分析工具
GoPlantUML
为 Go 项目生成 PlantUML 类图
gosize
分析Go二进制文件大小
shotizam
分析 Go 二进制文件的大小并输出到 SQLite3
goconst
查找可以被常量替换的重复字符串
sploit
帮助二进制分析和开发的库
perf
Perf Utilities for Go
fgprof
Go 性能分析工具
conprof
协程分析
statsview
实时 Go 运行时统计数据可视化分析器
codesearch
代码搜索工具
Pyroscope
可视化程序性能监控工具,支持多种语言
gokart
代码静态分析工具
NoVerify
PHP 代码分析工具
fieldalignment
结构体字段内存对齐分析和自动修复工具
开源类库 >调试
Delve
Debug 工具
gdlv
Delve 界面版本
Weaver
跟踪 Go 程序执行链路
repr
变量打印工具
ffmt
变量打印工具
gops
谷歌官方出品的 Go 程序监控调试工具
pprof
pprof is a tool for visualization and analysis of profiling data
go-callvis
可视化Go程序的调用图
q
自动打印变量类型并且格式化输出
Litter
Litter is a pretty printer library for Go data structures to aid in debugging and testing.
RDebug
滴滴开源的一款用于 RD 研发、自测、调试的实用工具
debugcharts
Go 内存占用可视化调试工具
gcvis
实时可视化 gctrace
pkg/profile
Simple profiling support package for Go.
autopprof
自动分析 pprof
stack
捕获、操作、格式化调用栈信息
pretty
打印变量
go-deadlock
对 (RW)Mutex 进行注入,并提供死锁检测
gcnotifier
当发生 GC 时通知
grmon
命令行监控显示 goroutines
valast
打印输出变量的 go/ast 结构,类似于 PHP 的 var_export 函数
lensm
Go 汇编与源码对照查看工具
holmes
基于规则的自动 Go Profile Dumper
开源类库 >测试
GoMock
谷歌出品的Mock测试框架
Monkey
(Archived) Monkey patching in Go
gomonkey
猴子补丁,对函数、变量等进行打桩,方便单元测试,Fork 自 Monkey
SuperMonkey
让私有方法可测
Ginkgo
BBD 测试框架
fperf
压测工具
gocheck
by niemeyer Rich testing for the Go language
Testify
A toolkit with common assertions and mocks that plays nicely with the standard library
gotests
根据源码自动生成测试文件
TestSQL
根据 SQL 创建语句生成测试数据
httpmock
HTTP Mock
Goblin
BDD 测试框架
go-faker/faker
Struct Data Fake Generator
go-tprof
包测试报告生成工具
gofight
Testing API Handler
sqlbench
SQL
silk
基于 Markdown 的接口测试
gock
HTTP mock 测试
endly
E2E(端到端)测试
is
迷你测试框架
agouti
Web 驱动的验收测试框架
httpexpect
端到端 HTTP & REST 测试框架
gocov
测试覆盖率
miniredis
Redis 数据测试
htmltest
HTML 测试
gnomock
无需 mock 的 Go 代码测试框架
gunit
xUnit 风格测试框架
k6
负载测试工具
go-cover-treemap
将覆盖率测试结果转换成 TreeMap 图
ZTF
禅道开源的自动化测试框架
Moq
为接口生成 Mock 代码
开源类库 >错误处理
errors
Simple error handling primitives
errorx
A feature rich error package with stack traces, composition of errors and more.
errwrap
Go tool to wrap and fix errors with the new %w verb directive
erris
Linter for errors.Is and errors.As
eris
旨在通过错误包装,堆栈跟踪和输出格式为你提供对错误处理的更多控制
errlog
使用静态和堆栈跟踪分析来快速确定哪个函数调用导致的错误
merry
支持堆栈、状态码的错误处理
cockroachdb/errors
功能强大、可替代 errors 和 github.com/pkg/errors 的错误处理包
go-multierror
支持错误列表
开源类库 >安全
开源类库 >系统信息
go-hardware
收集了一堆关于硬件信息的包
cpuid
CPU 信息
go-sysinfo
系统信息
go-locale
跨平台语言检测库
go-ps
系统进程信息
psgo
ps 命令实现
ghw
硬件信息
machineid
获取机器ID
开源类库 >UUID
go.uuid
UUID 库
SEQSVR
Go + MySQL 实现的分布式 ID 生成服务
google/uuid
Google 开源的 uuid 包
gofrs/uuid
Implementation of Universally Unique Identifier (UUID). Supports both creation and parsing of UUIDs. Actively maintained fork of satori uuid.
snowflake
Twitter snowflake IDs
sonyflake
Sony 版本的 Twitter's Snowflake
ksuid
K-Sortable Globally Unique IDs
go-nanoid
NanoID 实现
xid
全局唯一 ID 生成器
开源类库 >日志
logr
日志包标准接口
Seelog
Logging functionality with flexible dispatching, filtering, and formatting.
logkit
七牛开源的日志收集工具
gogstash
类似于 Logstash 的日志收集器
lumberjack
日志文件切割
file-rotatelogs
日志文件切割
go-syslog
极速 Syslog 解析器
开源类库 >监控告警
OpenFalcon
小米开源的监控系统
Prometheus
服务监控系统 & 时间序列数据库
grabana
用 Go 代码快速创建 grafana dashboards
go-osstat
系统指标统计
grafterm
Metrics dashboards on terminal
mymon
MySQL 运行监控
PingMe
支持多消息平台的服务可用性报警命令工具
supervisord
Go 语言实现 Supervisor
Grafana Tempo
分布式追踪系统
Uptrace
APM 工具,支持 OpenTelemetry 追踪、指标和日志
Nightingale
滴滴基于 OpenFalcon 开源的监控系统
开源类库 >统计分析
开源类库 >容器技术
开源类库 >集群管理
OpenShift Origin
Red Hat 开发的容器化软件解决方案
kubernetes
容器调度管理平台
sealos
一条命令部署 Kubernetes 高可用集群
KubeEye
通过配置规则发现 Kubernetes 上的各种问题
endpoints-operator
K8S内部服务访问外部服务的具备探活功能的4层LB
开源类库 >机器学习
开源类库 >人工智能
开源类库 >算法
Dragonboat
多组 Raft 共识算法库
eliben/raft
Raft 算法
hashicorp/raft
Raft 算法
Graft
Raft 算法
golang-lru
LRU 算法实现
finn
Fast Raft framework using the Redis protocol for Go
priyankchheda/algorithms
各种算法的 Go 语言实现
meow
Meow hash
basalt
高性能的分布式的专门空间优化的 Bitmap 服务, 杜绝 Bloomfilter 和 CuckooFilter 的误判
go-blurhash
BlurHash,是模糊图片的一种哈希算法
xxhash
xxHash 哈希算法实现
go-multihash
各种 Hash 算法实现
memberlist
基于 gossip 协议实现的管理集群成员和成员失败检测的开发包
backoff
指数退避算法(Exponential Backoff)
FSM
有限状态机
开源类库 >数据结构
go-datastructures
A collection of useful, performant, and threadsafe Go datastructures.
Play-with-Data-Structures
「玩转数据结构」课程的 Go 语言实现版本
SipHash
SipHash-2-4
golang-set
The missing set collection
rbang
R!tree 实现
rtreego
R-tree
google/btree
B-Tree
tinybtree
B-tree
dataframe-go
用于数据统计和操作的包
go-set
集合工具包
orderedmap
有序字典
Slim
空间高利用率的数据结构
bitset
位集合及其操作
go-immutable-radix
Radix 树
开源类库 >依赖注入
go-autowire
使用注解自动生成 wire - 依赖注入
开源类库 >JSON
jsonparser
THE fastest alternative JSON parser for Go that does not require schema
ffjson
Faster JSON serialization for Go.
json-iterator
滴滴开源的 JSON 解析器
easyjson
Fast JSON serializer for golang.
go-jsonc
将带注释的 JSON 转为无注释的
jin
JSON 操作工具包,同时具有标准库和类似 tidwall/gjson 和 tidwall/sjson 的功能
hujson
支持注释的 JSON 解码
pkg/json
JSON Decoder
ColorJSON
终端中打印彩色 JSON
jid
JSON 数据解析读取工具
jsonc
支持注释与逗号
go-json
Fast JSON encoder/decoder compatible with encoding/json for Go
jsonquery
XPath 语法查询 JSON
开源类库 >依赖管理
goproxy.io
GOPROXY 代理服务
goproxy.cn
更适合国内用户的代理服务
Gopm
Go 包管理工具
govendor
Vendor 包管理工具
gom
包版本管理工具
rvflash/goup
检查包版本是否有更新
owenthereal/goup
Go 多版本管理
Athens
GOPROXY 代理服务
开源类库 >微服务
goa
Design-first Go framework that generates API code, documentation, and clients. Define once in an elegant DSL, deploy as HTTP and gRPC services with zero drift between code and docs.
Micro
微服务工具
GoKit CLI
Go kit 脚手架
go-chassis
A framework for rapid development of microservices in Go that is easy to integrate with some cloud ecosystems.
Kite
Micro-service framework in Go
Kratos
B站开源的微服务框架
Serf
服务编排管理平台
Open Policy Agent
通用策略引擎,CNCF 孵化项目
gizmo
微服务工具集
MOSN
用于边缘和服务网格的云原生网络数据平面
Erda
为企业提供 DevOps、微服务治理、多云管理的 PaaS
Traefik Mesh
简单的服务网格
开源类库 >Serverless
faasd
轻量级 FaaS 引擎
fn
事件驱动的 FaaS
riff
基于 Kubernetes 的 FaaS
Dapr
微软开源的云和边缘计算的微服务构件
kubeless
Kubernetes Native Serverless Framework.
pulumi
A multi-language, multi-cloud development platform -- your code, your cloud, your team.
Knative
Kubernetes-based, scale-to-zero, request-driven compute.
fx
A Function as a Service tool makes a function as a container-based service in seconds.
IronFunctions
IronFunctions - the serverless microservices platform by
schollz/faas
让任何包的函数变成一个 HTTP 接口
Vanus
无服务事件流处理系统
开源类库 >devops
开源类库 >持续集成/部署
开源类库 >Git
gitin
commit/branch/status explorer for git
git-o-matic
一个监控 Git 仓库变化和自动 pull/push 的工具
gitbase
SQL 的方式查询 Git 日志
git-chglog
CHANGELOG 管理工具
chglog
CHANGELOG 管理工具
lazyhub
GitHub 的终端 UI 客户端
goaction
在 Go 中编写 GitHub Action
bit
Git 命令增强版,支持文件和分支名称自动完成、命令和标志建议
askgit
通过 SQL 访问 Git 仓库信息
git2graph
根据 Git 仓库提交记录生成结构图
gh-dash
GitHub CLI(gh)漂亮终端面板
Soft Serve
命令行式自托管 Git 服务器
Git LFS
处理大文件的 Git 扩展
开源类库 >限流器
Tollbooth
Simple middleware to rate-limit HTTP requests
go-rate
Timed rate limiter for Go.
Circuit
熔断器
uber-go/ratelimit
A Go blocking leaky-bucket rate limit implementation
Sentinel
阿里巴巴开源的面向分布式服务架构的流量控制组件 Go 语言版本
gohalt
限流
gobreaker
熔断器
ulule/limiter
Dead simple rate limit middleware for Go.
开源类库 >编译器
开源类库 >解释器
participle
通用的自定义语法解析包
DCLua
Go Lua Compiler and VM
otto
JavaScript 解释器
v8go
Execute JavaScript from Go
gpython
Python Interpreter on Go
Grumpy
转换 Python 为 Go 代码,谷歌开源
starlark-go
Starlark in Go
avo
x86 汇编程序构建器
wagon
WebAssembly 解释器
Yaegi
Go 语言解释器
properties
Java properties scanner for Go
jvm.go
JVM
gobasic
A BASIC interpreter written in golang
golisp
Lisp 解释器
dst
Go Decorated Syntax Tree
tdewolff/parse
通用词法分析器 Lexer,并内置支持解析 HTML/CSS/JSON/XML/JS/SVG 语法
Joker
Clojure
z7zmey/php-parser
PHP AST 语法解析
deuill/go-php
PHP bindings for Go
goridge
High-performance PHP-to-Golang IPC bridge
RoadRunner
PHP 应用服务器、进程管理器、负载均衡,用于替代 Nginx + FPM
VKCOM/php-parse
PHP AST 语法解析
CUE
Configure Unify Execute(Validate and define text-based and dynamic configuration)
cel-go
Common Expression Language(CEL 的 Go 实现)
Math-Engine
使用 Go 实现的数学表达式解析计算引擎库,学习语法解析很适用
Gval
表达式计算
goexp
Recursive descent expression parser in Go
goastch
Go AST 语法解析
Anko
Scriptable interpreter written in Go.
Expr
编译&执行字符串中的表达式
V
Go 编写的语言
govaluate
Arbitrary expression evaluation for golang (archived)
Compiler
将自定义语法代码编译成 X86-64 Assembly
QLBridge
Go SQL Runtime Engine
YQL
SQL WHERE 风格的规则引擎
Flux
InfluxDB 数据语言
Spiker
Go 编写的简单规则表达式执行器,支持自定义函数和流程控制,适用于业务规则复杂的场景
gocc
解析器生成器,可以将指定的文法转换为 Go 语言的解析器程序代码,用于编译和解析特定类型的源代码
开源类库 >代码生成
开源类库 >编辑器
sourcegraph
代码搜索&导航
开源类库 >运行器
开源类库 >查询语言
graphql-go
GraphQL server with a focus on ease of use.
GQLEngine
基于 graphql-go 实现
RQL
REST 资源查询语言
Thunder
GraphQL 服务构建框架
super-graph
无需编写代码即可在 Go 项目中构建复杂的 GraphQL API
开源类库 >游戏相关
开源类库 >桌面开发
Lorca
用 Go 编写 HTML5 桌面程序,依赖 Chrome 进行 UI 渲染,但却不把 Chrome 打包到应用中
webview
用 Go/C/C++ 构建跨平台的桌面软件
go-gtk
Go bindings for GTK
andlabs/ui
Platform-native GUI library for Go
go-gl
Go bindings for OpenGL (generated via glow)
therecipe/qt
基于 Qt 的跨全平台 UI 包
giu
基于 Dear ImGui 的跨平台 GUI 框架
go-app
一个 WebAssembly 框架,用于使用 Go,HTML 和 CSS 构建 GUI 应用
chromedp
纯 Go 语言实现的驱动浏览器的 Chrome DevTools Protocol,可用于爬虫、反爬虫、测试等场景
go-astilectron
基于 Electron 的跨平台开发
Gio
跨平台 UI 框架,支持移动应用
nucular
基于 Gio 的实现
GoVCL
跨平台的 GUI 包
vugu
WebAssembly UI 框架
GoGi
2D/3D GUI 框架
go-flutter
绑定 Flutter 到桌面应用
pkg/browser
在浏览器中打开文件、URL
MacDriver
macOS 原生 API
gon
为 macOS 签名和公证
阿里云盘小白羊版
UI由Flutter构建
开源类库 >移动端
golang/mobile
Go support for Mobile devices
开源类库 >协程/线程
开源类库 >任务/定时器
RxGo
Go 版 ReactiveX,简单方便的处理异步数据流
Grift
Go based task runner
cron
a cron library for go
jobrunner
Smart and featureful cron job scheduler with job queuing and live monitoring built in.
CurlyQ
后台任务处理库
overtalk/task
任务的管理&执行,支持自定义次数的重发
PPGo_Job
定时任务管理系统
gocelery
Celery 的 Go 语言实现
dkron
分布式任务调度系统
Grit
基于 MultiTree 实现的任务管理
cronsun
分布式任务系统
开源类库 >流处理
watermill
star:9474 Working efficiently with message streams. Building event driven applications, enabling event sourcing, RPC over messages, sagas. Can use conventional pub/sub implementations like Kafka or RabbitMQ, but also HTTP or MySQL binlog.
go-streams
Go stream processing library.
Cadence
(Cadence Web UI) - Uber开源的分布式工作流引擎,主要用于微服务编排和分布式事务等场景
开源类库 >微信
开源类库 >SDK
开源类库 >区块链
Hyperledger Fabric
基于区块链的超级账本
go-ethereum
以太坊协议的官方 Go 语言实现
bbgo
用 Go 编写的加密货币交易框架
btcd
比特币实现
开源类库 >开发辅助包
cvt
任意数据类型转换,支持自定义类型、提取结构体字段和值
copier
struct 之间拷贝值
cast
数据类型转换
diff
结构体&值比较
go-extend
go语言扩展包,收集一些常用的操作函数,辅助更快的完成开发工作,并减少重复代码
com
工具包
php2go
Go 实现的 140+ 个 PHP 函数功能包
gommon
Common packages for Go
reflect2
reflect api without runtime reflect.Value cost
mapstructure
将 map 值转换到结构体中
naza
Go语言基础库
automaxprocs
自动设置 GOMAXPROCS
c2go
将 C 代码转换为 Go 代码的工具
rnm
代码重构辅助工具
memviz
图形化数据结构
go-testdeep
非常灵活的深度比较包,扩展了 Go 测试包
go-model
struct 操作包
concurrent-map
并发安全 map
goleak
检测 goroutine 泄漏
guregu/null
SQL/JSON的null处理包,提供替代类型
Chronos
静态竞争检测器
collection
替代原生的 Slice
rf
代码重构工具
bytebufferpool
byte buffers pool
bpool
byte buffers pool,支持 bytes.Buffers
mergo
合并结构体和字典数据
juniper
基于泛型实现常用的容器、迭代器、数据流等功能
xstrings
字符串相关函数
pie
slice/map 链式处理
开源类库 >代码生成
ChimeraCoder/gojson
根据 JSON 生成结构体
db2struct
根据表结构生成结构体
smallnest/gen
根据表结构生成结构体
sqlc
根据 SQL 语句生成 Go 代码
xo
根据表结构或查询语句自动生成 Go 代码
开源类库 >系统开发
LinuxKit
为容器构建安全、便携、可移植操作系统的工具包
go-systemd
绑定 systemd
Lima
Linux-on-Mac ("macOS subsystem for Linux", "containerd for Mac")
gopher-os
一个兼容 Linux 的 64 位 POSIX 风格系统
gouring
不依赖 CGO 实现系统调用
开源类库 >未归类
go-playground
比官方更好用的 Go Playground
i18n
i18n 多语言工具包
Paginater
分页工具
gls
Goroutine local storage
mcuadros/go-version
版本号比较
go-semver
语义版本
semver
另一个语义版本
Metabolize
Decodes HTML meta tags into a Golang struct
otp
一次性密码工具包(One Time Password utilities)
misspell
常拼写错误的英语单词
CRDT
CRDT(Convergent and Commutative Replicated Data Types)最终一致性算法的实现
sysadmin-utils
Steve Kemp's collection of tool scripts for sysadmins.
licenseclassifier
识别文件中的 LICENSE 类型
rose
在 HTML 中嵌入和运行 Go 代码
clipboard
剪切板
clipboard
剪切板
Timeliner
搜集整理个人在社交网站上的数据并索引成时间线
hc
HomeKit 平台开发框架
address
地址处理库,支持多国语言
webhookd
为 Shell 脚本提供 Web Hook 服务
go-cid
CID spec Go 语言实现
EventBus
事件总线
go-winio
为 Win32 IO 操作提供接口支持
fq
以 jq 语法读取二进制数据/文件
logo
Gophers
Free gophers.
工具
syndbg/goenv
Go 版本管理
wfarr/goenv
Go 版本管理
gvm
Go 版本管理
Visual Studio Code
New type of tool that combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle. Code provides comprehensive editing and debugging support, an extensibility model, and lightweight integration with existing tools.
资源站点
Go 101
A book focusing on Go syntax/semantics and all kinds of details.
Golang sizeof tips
输入结构体定义,会显示内存布局
Related lists in Programming Languages
See categoryAwesome Rust
rust-unofficial/awesome-rust
A curated list of Rust code and resources.
Awesome Mac
jaywcjlove/awesome-mac
This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.
Awesome Python
vinta/awesome-python
Curated Python frameworks, libraries and resources.
Awesome C++
fffaraz/awesome-cpp
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
Awesome Go
avelino/awesome-go
Curated Go frameworks and libraries.
Awesome PHP
ziadoz/awesome-php
A curated list of amazingly awesome PHP libraries, resources and shiny things.