diff --git a/README.md b/README.md new file mode 100644 index 0000000..2de4583 --- /dev/null +++ b/README.md @@ -0,0 +1,695 @@ +# go-awesome +> 嗯~世界上第二好的语言,这里有你想要的💊 +> +> 在 [GitHub](https://github.com/shockerli/go-awesome) 上稳定更新,觉得不错请点个 Star ❤️ +> +> 如转载分享,请保留出处,谢谢 😆 +> +> 原文地址: https://shockerli.net/post/go-awesome +> +> GitHub: https://github.com/shockerli/go-awesome + +--- + +> 官网: https://golang.org +> +> 国内官网镜像(访问快~): https://golang.google.cn +> +> GitHub: https://github.com/golang/go +> +> Wiki: https://github.com/golang/go/wiki + + +## 指导原则 +- 简单性 + > 复杂性把可读的程序变得不可读,复杂性终结了很多软件项目。 + +- 可读性 + > 代码是给人看的,代码阅读时长远超编写。程序必须可维护,那可读是第一步。 + +- 生产率 + > 拥有众多的工具集和基础库,可以很简单方便的完成绝大多数工作。 + > 编译速度足够快,拥有动态语言的高效,但却不会面临动态语言不可靠的问题。 + > 自带编程规范,使得团队代码一致,也帮助开发者发现和避免潜在的错误。 + + +## Awesome +- [**GitHub Topic for Go**](https://github.com/topics/golang) +- [**Awesome Go**](https://github.com/avelino/awesome-go) +- [golang-open-source-projects](https://github.com/hackstoic/golang-open-source-projects) - 含描述的中文版 Awesome Go +- [Awesome Go Storage](https://github.com/gostor/awesome-go-storage) - Go 存储相关开源项目 +- [awesome-go-China](https://github.com/hyper0x/awesome-go-China/blob/master/zh_CN/README.md) - 专门收集华人写的开源项目 +- [Go Patterns](https://github.com/tmrts/go-patterns) - Go 版本的设计模式 +- [go-algorithms](https://github.com/0xAX/go-algorithms) - Go 版本的数据结构和算法 +- [Go 学习之路](https://github.com/developer-learning/learning-golang) - Go 学习资料汇集 +- [Go 开发者路线图](https://github.com/Alikhll/golang-developer-roadmap) + + +## 大牛 +> Go 语言方面的大牛,或者优秀 Go 项目的组织 + +- [mattn](https://github.com/mattn?tab=repositories&q=&type=&language=go) - 写了数百个 Go 项目,盛产优质项目 +- [Unknwon](https://github.com/Unknwon) - gogs/macaron 等项目作者,《The Way to Go》译者 +- [Jinzhu](https://github.com/jinzhu) - gorm/QOR 等作者 +- [valyala](https://github.com/valyala) - fasthttp/fastjson 等作者 +- [vmihailenco](https://github.com/vmihailenco) - go-redis/go-pg 等作者 +- [kataras](https://github.com/kataras?utf8=%E2%9C%93&tab=repositories&q=&type=source&language=go) - iris 作者 +- [bep](https://github.com/bep) +- [spf13](https://github.com/spf13) +- [Uber](https://github.com/uber?q=&type=&language=go) - Open Source Software at Uber +- [Gorilla web toolkit](https://github.com/gorilla) +- [Stretchr](https://github.com/stretchr) - Tame your unstructured data +- [Containous](https://github.com/containous) + + +## 文档 +- [Go 官方入门指南](http://tour.studygolang.com) +- [Go 语言高级编程](https://github.com/chai2010/advanced-go-programming-book) +- [Go 专家编程](https://github.com/RainbowMango/GoExpertProgramming) +- [Go 编程语言](http://docscn.studygolang.com) +- [Golang 标准库文档(官方/中文)](https://studygolang.com/pkgdoc) +- [Go 语言标准库](https://github.com/polaris1119/The-Golang-Standard-Library-by-Example) *[`在线阅读`](https://books.studygolang.com/The-Golang-Standard-Library-by-Example/)* +- [《The Way to Go》中文版](https://github.com/Unknwon/the-way-to-go_ZH_CN) +- [Go 语言圣经(中文版)](https://github.com/gopl-zh/gopl-zh.github.com) +- [Go语言入门教程](http://c.biancheng.net/golang/) +- [Go 实战开发](https://github.com/astaxie/Go-in-Action) +- [Go Web 应用开发](https://github.com/astaxie/build-web-application-with-golang) +- [Go 学习技能树](http://yougg.github.io/static/gonote/GolangStudy.html) +- [实效 Go 编程](https://go-zh.org/doc/effective_go.html) +- [Go 语言语法详解笔记](https://github.com/yougg/gonote) +- [Go 语言学习资料与社区索引](https://github.com/Unknwon/go-study-index) +- [Go database/sql tutorial](http://go-database-sql.org) +- [GO 命令教程](https://github.com/hyper0x/go_command_tutorial) +- [深入解析 Go](https://github.com/tiancaiamao/go-internals) +- [Go 语言博客实践](https://github.com/achun/Go-Blog-In-Action) +- [学习 Go 语言](https://github.com/mikespook/Learning-Go-zh-cn) +- [Go 夜读](https://github.com/developer-learning/night-reading-go) - Go 标准包、开源项目源代码阅读讲解 +- [Go2编程指南](https://github.com/chai2010/go2-book) +- [Go database/sql tutorial](https://github.com/VividCortex/go-database-sql-tutorial) - Go 数据库(database/sql)开发使用教程 +- [Go Web Examples](https://github.com/gowebexamples/gowebexamples) - Go Web 开发示例 +- [Go Assembly](https://colobu.com/goasm/) - 通过示例介绍 Go 汇编功能 +- [Ultimate Go](https://github.com/hoanhan101/ultimate-go) - 终极 Go 学习指南,包含大量文档化的代码和程序分析 + + +## 指南 +- [Uber Go Style Guide](https://github.com/uber-go/guide) +- [Go 编程语言规范](http://docscn.studygolang.com/ref/spec.old) +- [实效 Go 编程](http://docscn.studygolang.com/doc/effective_go.html) +- [Go Code Review Comments](https://github.com/golang/go/wiki/CodeReviewComments) + + +## 文章 +- [**Go语言爱好者周刊**](https://github.com/polaris1119/golangweekly) +- [Go的50度灰:Golang新开发者要注意的陷阱和常见错误](https://colobu.com/2015/09/07/gotchas-and-common-mistakes-in-go-golang/) +- [Go 程序的性能优化及 pprof 的使用](http://www.cnblogs.com/snowInPluto/p/7403097.html) +- [gops - Go语言程序查看和诊断工具](https://www.cnblogs.com/snowInPluto/p/7785651.html) +- [Go源码分析——http.ListenAndServe()是如何工作的](https://blog.csdn.net/gophers/article/details/37815009) +- [GoConvey 框架使用指南](https://www.jianshu.com/p/e3b2b1194830) +- [GoStub 框架使用指南](https://www.jianshu.com/p/70a93a9ed186) +- [GoMock 框架使用指南](https://www.jianshu.com/p/f4e773a1b11f) +- [Monkey 框架使用指南](https://www.jianshu.com/p/2f675d5e334e) + + +## 付费教程 +- [基于 Go 语言构建企业级的 RESTful API 服务](https://juejin.im/book/5b0778756fb9a07aa632301e) - 掘金小册 +- [Go语言核心36讲](https://time.geekbang.org/column/112) - 极客时间 + + +## 成品项目 +- [studygolang](https://github.com/studygolang/studygolang) - Go 语言中文网 +- [Hugo](https://github.com/gohugoio/hugo) - 静态网站生成器 +- [喧喧](https://github.com/easysoft/xuanxuan) - 由`然之协同`提供的面向企业即时通信解决方案 +- [mkcert](https://github.com/FiloSottile/mkcert) - 生成本地 HTTPS 加密证书的工具 +- [Rainbond](https://github.com/goodrain/rainbond) - 基于Docker、Kubernetes等容器技术的开源PaaS +- [**NYADB2**](https://github.com/qw4990/NYADB2) - Go 实现的关系型数据库, 值得用于学习 +- [EiBlog](https://github.com/eiblog/eiblog) - `国产` 博客 +- [pan-light](https://github.com/peterq/pan-light) - 不限速的百度网盘客户端, 基于 Go + Qt5 开发 + + +## 学习项目 +- [1m-go-websockets](https://github.com/eranyanay/1m-go-websockets) - 该项目演示了如何用 Go 编写一个可以提供超过一百万个 `websockets` 连接、运行内存小于 1GB 的服务器 +- [Go by Example](https://github.com/mmcgrana/gobyexample) - 通过实例学习 Go + + +## 开源类库 + +### 框架 +- [Macaron](https://github.com/go-macaron/macaron) - 一款具有高生产力和模块化设计的 Go Web 框架 `国产` +- [Beego](https://github.com/astaxie/beego) - 一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架 `国产` +- [Gin](https://github.com/gin-gonic/gin) - 轻量 Web 框架 +- [Iris](https://github.com/kataras/iris) - Web 开发框架 +- [Revel](https://github.com/revel/revel) +- [echo](https://github.com/labstack/echo) +- [chi](https://github.com/go-chi/chi) +- [Faygo](https://github.com/henrylee2cn/faygo) - `国产` +- [Teleport](https://github.com/henrylee2cn/teleport) - Socket 框架 +- [GoFrame](https://github.com/gogf/gf) - `国产` +- [QOR](https://github.com/qor/qor) - 系列应用开发组件包 +- [Buffalo](https://github.com/gobuffalo/buffalo) +- [DotWeb](https://github.com/devfeel/dotweb) - `国产` +- [REST Layer](https://github.com/rs/rest-layer) - REST API framework +- [Honeytrap](https://github.com/honeytrap/honeytrap) +- [Ponzu](https://github.com/ponzu-cms/ponzu) +- [utron](https://github.com/gernest/utron) +- [muxie](https://github.com/kataras/muxie) +- [go-admin](https://github.com/chenhg5/go-admin) - 与 [laravel-admin](https://github.com/z-song/laravel-admin) 类似的后台管理快速开发框架 + + +### 中间件 +- [Negroni](https://github.com/urfave/negroni) - Web 中间件 +- [csrf](https://github.com/gorilla/csrf) - CSRF 中间件 +- [handlers](https://github.com/gorilla/handlers) - A collection of useful handlers for Go's `net/http` package + + +### 并发 +- [SizedWaitGroup](https://github.com/remeh/sizedwaitgroup) - 并发控制 +- [concurrent](https://github.com/modern-go/concurrent) - concurrency utilities + + +### 命令行 +- [urfave/cli](https://github.com/urfave/cli) - 命令行程序构建工具 +- [Cobra](https://github.com/spf13/cobra) - 命令行构建包 +- [GoTTY](https://github.com/yudai/gotty) - 基于Web的命令行实时共享 +- [progressbar](https://github.com/schollz/progressbar) - 在终端上输出进度条 +- [Color](https://github.com/fatih/color) - 命令行文字颜色 +- [termui](https://github.com/gizak/termui) - 终端仪表盘 +- [gosu](https://github.com/tianon/gosu) - 以指定的用户权限来运行脚本 +- [tui](https://github.com/marcusolsson/tui-go) - 终端 UI +- [gotop](https://github.com/cjbassi/gotop) - 类 top 系统监控显示 +- [go-colorable](https://github.com/mattn/go-colorable) - Colorable writer for Windows +- [go-isatty](https://github.com/mattn/go-isatty) - TTY 环境判断 +- [fzf](https://github.com/junegunn/fzf) - 命令行下的文件 Finder +- [flaggy](https://github.com/integrii/flaggy) - 命令参数解析 +- [go-daemon](https://github.com/sevlyar/go-daemon) - daemon 进程包 +- [pflag](https://github.com/spf13/pflag) - 命令行参数处理 +- [PIXterm](https://github.com/eliukblau/pixterm) - 在命令行终端中绘图 +- [WTF](https://github.com/wtfutil/wtf) - 一个命令行的信息仪表盘,可以定制显示内容 + + +### 路由 +- [HttpRouter](https://github.com/julienschmidt/httprouter) +- [mux](https://github.com/gorilla/mux) - URL 路由和调度器 +- [gocraft/web](https://github.com/gocraft/web) + + +### 网络 +- [**fasthttp**](https://github.com/valyala/fasthttp) - 比 `net/http` 快 10 倍的 HTTP 工具包 +- [Resty](https://github.com/go-resty/resty) - HTTP & REST 客户端包 +- [DNS](https://github.com/miekg/dns) - DNS 库 +- [CoreDNS](https://github.com/coredns/coredns) - DNS 服务器 +- [**Caddy**](https://github.com/mholt/caddy) - Web 服务器 +- [RoadRunner](https://github.com/spiral/roadrunner) - PHP 应用服务器、进程管理器、负载均衡,用于替代 `Nginx + FPM` +- [Træfik](https://github.com/containous/traefik) - 反向代理&负载均衡 +- [GoReplay](https://github.com/buger/goreplay) - 流量收集&回放 +- [Vegeta](https://github.com/tsenart/vegeta) - HTTP 负载压测工具 +- [hey](https://github.com/rakyll/hey) - Web 压测工具 +- [bombardier](https://github.com/codesenberg/bombardier) - Web 压测工具 +- [p2pspider](https://github.com/fanpei91/p2pspider) - 种子嗅探器 +- [goim](https://github.com/Terry-Mao/goim) - 支持集群的 im 及实时推送服务 +- [Proxy](https://github.com/snail007/goproxy) - golang 实现的高性能代理服务器 +- [ProxyPool](https://github.com/henson/ProxyPool) - 采集免费的代理资源为爬虫提供有效的IP代理 +- [frp](https://github.com/fatedier/frp) - 可用于内网穿透的高性能的反向代理应用 +- [torrent](https://github.com/anacrolix/torrent) - BitTorrent 相关工具库 +- [httpteleport](https://github.com/valyala/httpteleport) - Teleports 10Gbps http traffic over 1Gbps networks +- [FIND3](https://github.com/schollz/find3) - WiFi 设备发现 +- [SubFinder](https://github.com/subfinder/subfinder) - 子域名发现工具 +- [ggz](https://github.com/go-ggz/ggz) - 短网址服务 +- [httpstat](https://github.com/davecheney/httpstat) + + +### WebSocket +- [Gorilla WebSocket](https://github.com/gorilla/websocket) +- [websocketd](https://github.com/joewalnes/websocketd) - Go 开发的一键搭建 WebSocket 服务器命令行工具 +- [ws](https://github.com/gobwas/ws) - WebSocket 开发包 +- [melody](https://github.com/olahol/melody) - WebSocket 服务框架 + + +### 网关 +- [GoKu API Gateway CE](https://github.com/eolinker/GoKu-API-Gateway) - eoLinker 开源的 API 网关 + + +### 序列化 +- [vmihailenco/msgpack](https://github.com/vmihailenco/msgpack) - 支持 msgpack +- [go/codec](https://github.com/ugorji/go) - 支持 msgpack/binc/cbor/json +- [protobuf](https://github.com/golang/protobuf) - Go 版本的 Protocol Buffers +- [Objx](https://github.com/stretchr/objx) - 操作 map, slice, JSON 等数据的包 + + +### RPC +- [gRPC-Go](https://github.com/grpc/grpc-go) - gRPC 官方包 +- [gorpc](https://github.com/valyala/gorpc) +- [gorilla/rpc](https://github.com/gorilla/rpc) - 构建基于 HTTP 的 RPC 服务,比如 JSON-RPC +- [Lile](https://github.com/lileio/lile) - gRPC 服务构建包 +- [rpcx](https://github.com/smallnest/rpcx) +- [Twirp](https://github.com/twitchtv/twirp) + + +### 邮件 +- [Gomail](https://github.com/go-gomail/gomail) - 邮件发送包 +- [scorredoira/email](https://github.com/scorredoira/email) + + +### 消息 +- [Tinode](https://github.com/tinode/chat) - 即时消息服务器,通过 websocket/JSON 或 gRPC/TCP 等协议传输 +- [NSQ](https://github.com/nsqio/nsq) - 分布式消息平台 + + +### 文件 +- [Syncthing](https://github.com/syncthing/syncthing) - 文件同步 +- [fsnotify](https://github.com/fsnotify/fsnotify) - 文件系统监控工具 +- [gohttpserver](https://github.com/codeskyblue/gohttpserver) - HTTP 静态文件服务器 +- [XLSX](https://github.com/tealeg/xlsx) - Excel 读写包 +- [Excelize](https://github.com/360EntSecGroup-Skylar/excelize) - 360 开源的 Excel 工具包 +- [SeaweedFS](https://github.com/chrislusf/seaweedfs) - 分布式文件系统 +- [go-fastdfs](https://github.com/sjqzhang/go-fastdfs) - 分布式文件存储服务 +- [Dragonfly](https://github.com/dragonflyoss/Dragonfly) - 基于 P2P 的分布式文件系统 +- [filetype](https://github.com/h2non/filetype) - 检测文件类型 +- [cae](https://github.com/Unknwon/cae) - 实现 ZIP/TAR.GZ 解压缩 +- [compress](https://github.com/klauspost/compress) - Optimized compression packages +- [Afero](https://github.com/spf13/afero) - 文件操作包 +- [fsync](https://github.com/spf13/fsync) - 文件/目录同步 +- [filebrowser](https://github.com/filebrowser/filebrowser) - Web File Browser + + +### 模板引擎 +- [goTemplateBenchmark](https://github.com/SlinSo/goTemplateBenchmark) - 给各 Go 模板引擎做性能测试,当然也就包含了最全的模板引擎包 +- [Jet](https://github.com/CloudyKit/jet) - 速度很快 +- [amber](https://github.com/eknkc/amber) - HTML 模板引擎 +- [fasttemplate](https://github.com/valyala/fasttemplate) - Simple and fast template engine for Go +- [quicktemplate](https://github.com/valyala/quicktemplate) +- [mustache](https://github.com/hoisie/mustache) +- [Ace](https://github.com/yosssi/ace) + + +### 文本 +- [Blackfriday](https://github.com/russross/blackfriday) - Markdown 解析器 +- [gpy](https://github.com/go-ego/gpy) - Go 语言汉字转拼音工具 +- [html2text](https://github.com/jaytaylor/html2text) - HTML 转 text +- [go-hashids](https://github.com/speps/go-hashids) - hashids 的 Go 版本 +- [go-pinyin](https://github.com/mozillazg/go-pinyin) - 汉语拼音转换工具 Go 版 +- [mahonia](https://github.com/axgle/mahonia) - 字符集编码转换 +- [pangu.go](https://github.com/vinta/pangu) - Go 版本的 pangu,给中英文之间加空格 +- [goorgeous](https://github.com/chaseadamsio/goorgeous) - A Go ORG syntax parser to HTML +- [go-diff](https://github.com/sergi/go-diff) - Go 版本的 diff 工具包 +- [Chroma](https://github.com/alecthomas/chroma) - 代码语法高亮 +- [Emoji](https://github.com/kyokomi/emoji) +- [prose](https://github.com/jdkato/prose) - natural language processing library +- [minify](https://github.com/tdewolff/minify) - Web 静态资源压缩(HTML/JS/CSS/JSON) +- [Lute](https://github.com/b3log/lute) - 结构化的 Markdown 引擎 +- [docx2md](https://github.com/mattn/docx2md) 转换 Word 为 Markdown + + +### 文档 +- [swag](https://github.com/swaggo/swag) - Swagger for Go +- [gin-swagger](https://github.com/swaggo/gin-swagger) - Swagger for Gin +- [go-swagger](https://github.com/go-swagger/go-swagger) - Swagger 2.0 implementation for go + + +### 数学计算 +- [decimal](https://github.com/shopspring/decimal) - 解决浮点数计算精度问题 +- [fixed](https://github.com/robaho/fixed) + + +### 日期时间 +- [now](https://github.com/jinzhu/now) +- [when](https://github.com/olebedev/when) - 自然日期时间解析 + + +### 配置 +- [GoDotEnv](https://github.com/joho/godotenv) - `.env` 配置文件解析 +- [yaml](https://github.com/go-yaml/yaml) +- [toml](https://github.com/BurntSushi/toml) - `TOML` 解析&编码包 +- [INI](https://github.com/go-ini/ini) - `INI` 配置文件解析 +- [Viper](https://github.com/spf13/viper) - 支持 `JSON`, `TOML`, `YAML`, `HCL`, `Java` 等配置文件 +- [Multiconfig](https://github.com/koding/multiconfig) +- [configor](https://github.com/jinzhu/configor) +- [envconfig](https://github.com/kelseyhightower/envconfig) +- [confd](https://github.com/kelseyhightower/confd) - 配置管理工具 + + +### 爬虫 +- [Crawlab](https://github.com/crawlab-team/crawlab) - 基于Golang的分布式爬虫管理平台,支持Python、NodeJS、Go、Java、PHP等多种编程语言以及多种爬虫框架 +- [Colly](https://github.com/gocolly/colly) - 网络爬虫框架 +- [Pholcus](https://github.com/henrylee2cn/pholcus) - 支持分布式的高并发、重量级爬虫软件 +- [go_spider](https://github.com/hu17889/go_spider) +- [goquery](https://github.com/PuerkitoBio/goquery) +- [Muffet](https://github.com/raviqqe/muffet) - 网站链接检查器 +- [Creeper](https://github.com/wspl/creeper) + + +### 数据库相关 +- [GORM](https://github.com/jinzhu/gorm) + + [gorm2sql](https://github.com/liudanking/gorm2sql) - 根据 Model Struct 生成建表语句 +- [Xorm](https://github.com/go-xorm/xorm) - 支持 MySQL、PostgreSQL、SQLite3 以及 MsSQL +- [GoRose](https://github.com/gohouse/gorose) +- [Go-MySQL-Driver](https://github.com/go-sql-driver/mysql) +- [sqlx](https://github.com/jmoiron/sqlx) - `database/sql` 扩展包 +- [qb](https://github.com/aacanakin/qb) - the database toolkit for go +- [Redigo](https://github.com/gomodule/redigo) - Redis 客户端 +- [go-redis](https://github.com/go-redis/redis) +- [mongo-go-driver](https://github.com/mongodb/mongo-go-driver) - MongoDB 官方出品的 Go 语言驱动 +- [mgo](http://labix.org/mgo) + + [globalsign/mgo](https://github.com/globalsign/mgo) - The MongoDB driver for Go + + [mgo使用指南](https://studygolang.com/articles/3485) +- [amqp](https://github.com/streadway/amqp) - Go client for AMQP 0.9.1 +- [xo](https://github.com/xo/xo) - a command-line tool to generate Go code based on a database schema or a custom query +- [kingshard](https://github.com/flike/kingshard) - MySQL Proxy +- [SOAR](https://github.com/XiaoMi/soar) - 对SQL进行优化和改写的自动化工具 +- [gh-ost](https://github.com/github/gh-ost) - GitHub 开源的在线更改 MySQL 表结构的工具 +- [go-mssqldb](https://github.com/denisenkom/go-mssqldb) - MSSQL 驱动 +- [pq](https://github.com/lib/pq) - PostgreSQL 驱动 +- [SQLer](https://github.com/alash3al/sqler) - write APIs using direct SQL queries with no hassle, let's rethink about SQL +- [gocraft/dbr](https://github.com/gocraft/dbr) +- [Gaea](https://github.com/XiaoMi/Gaea) - 小米开源的基于 MySQL 协议的数据库中间件 +- [OctoSQL](https://github.com/cube2222/octosql) - 支持多数据库的 SQL 查询工具 +- [goose](https://github.com/pressly/goose) - 数据库迁移工具 +- [**ent**](https://github.com/facebookincubator/ent) - An Entity Framework For Go + + +### 数据库引擎 +- [etcd](https://github.com/etcd-io/etcd) - KV 分布式存储 +- [InfluxDB](https://github.com/influxdata/influxdb) +- [CockroachDB](https://github.com/cockroachdb/cockroach) - SQL database +- [Cayley](https://github.com/cayleygraph/cayley) - 图数据库 +- [RadonDB](https://github.com/radondb/radon) - 基于 MySQL 研发的新一代分布式关系型数据库 +- [AresDB](https://github.com/uber/aresdb) - Uber 开源的 GPU 驱动的实时分析存储&查询引擎 +- [leveldb](https://github.com/syndtr/goleveldb) - LevelDB 的 Go 实现 +- [Dgraph](https://github.com/dgraph-io/dgraph) - 分布式图数据库 + + +### 搜索 +- [wukong](https://github.com/huichen/wukong) - 全文搜索引擎 +- [go-elasticsearch](https://github.com/elastic/go-elasticsearch) - 官方 ES 客户端 +- [elastic](https://github.com/olivere/elastic) - Elasticsearch 客户端 +- [go-mysql-elasticsearch](https://github.com/siddontang/go-mysql-elasticsearch) - Sync MySQL data into elasticsearch +- [gse](https://github.com/go-ego/gse) - Go 语言分词 +- [sego](https://github.com/huichen/sego) - Go 中文分词 +- [Riot](https://github.com/go-ego/riot) - 全文搜索引擎 + + +### 表单 +- [validator](https://github.com/go-playground/validator) +- [go-tagexpr](https://github.com/bytedance/go-tagexpr) - 字节跳动开源的结构体标签表达式解释器 +- [schema](https://github.com/gorilla/schema) - converts structs to and from form values + + +### Auth +- [Casbin](https://github.com/casbin/casbin) - 权限控制管理 +- [pam-ussh](https://github.com/uber/pam-ussh) - Uber's SSH certificate pam module +- [jwt-go](https://github.com/dgrijalva/jwt-go) - JWT for Go +- [sessions](https://github.com/gorilla/sessions) - 后端 SESSION 服务 +- [securecookie](https://github.com/gorilla/securecookie) - cookie 加密/解密 +- [Goth](https://github.com/markbates/goth) - Multi-Provider Authentication for Go + + +### 缓存 +- [GCache](https://github.com/bluele/gcache) +- [bbolt](https://github.com/etcd-io/bbolt) - key/value store +- [go-cache](https://github.com/patrickmn/go-cache) - KV 内存缓存 +- [gomemcache](https://github.com/bradfitz/gomemcache) - Memcache 客户端 +- [cache2go](https://github.com/muesli/cache2go) + + +### 图片 +- [barcode](https://github.com/boombuler/barcode) - 条形码/二维码生成器 +- [picfit](https://github.com/thoas/picfit) - 图片操作、裁剪、管理服务器 +- [gmfs](http://git.oschina.net/juapk/gmfs) - 图片操作、裁剪、管理服务器 +- [besticon](https://github.com/mat/besticon) - favicon 服务 +- [Caire](https://github.com/esimov/caire) - 图片操作库 +- [Imaging](https://github.com/disintegration/imaging) - 图片操作库 +- [gocaptcha](https://github.com/lifei6671/gocaptcha) - 验证码生成 +- [go-is-svg](https://github.com/h2non/go-is-svg) - 校验是否为 SVG 图片 +- [identicon](https://github.com/issue9/identicon) - 根据用户的 IP 、邮箱名等任意数据为用户产生漂亮的随机头像 + + +### 图表 +- [go-echarts](https://github.com/chenjiandongx/go-echarts) - Echarts 图表库 + + +### 构建编译 +- [**Mage**](https://github.com/magefile/mage) - a Make/rake-like build tool using Go +- [**GoReleaser**](https://github.com/goreleaser/goreleaser) - Go 多平台二进制文件打包、并支持发布到 Homebrew 的工具 +- [goxc](https://github.com/laher/goxc) +- [gometalinter](https://github.com/alecthomas/gometalinter) - 代码质量检查分析工具 +- [Task](https://github.com/go-task/task) - 类似于 `Make` 的构建工具 +- [gin](https://github.com/codegangsta/gin) - 热编译工具,自动监测文件变化而重新编译并重启,方便开发调试 Web 应用 + + +### 调试 +- [**go-spew**](https://github.com/davecgh/go-spew) - 变量打印工具 +- [**Delve**](https://github.com/go-delve/delve) - Debug 工具 +- [repr](https://github.com/alecthomas/repr) - 变量打印工具 +- [pp](https://github.com/k0kubun/pp) - 彩色变量打印工具 +- [gops](https://github.com/google/gops) - 谷歌官方出品的 Go 程序监控调试工具 +- [pprof](https://github.com/google/pprof) +- [go-callvis](github.com/TrueFurby/go-callvis) - 可视化Go程序的调用图 +- [q](https://github.com/y0ssar1an/q) - 自动打印变量类型并且格式化输出 +- [Litter](https://github.com/sanity-io/litter) +- [errcheck](https://github.com/kisielk/errcheck) - 检测未处理的错误(errors) +- [Staticcheck](https://github.com/dominikh/go-tools) - 一系列的 Go 代码静态分析工具 + + +### 测试 +- [GoConvey](https://github.com/smartystreets/goconvey) - 含Web界面的单元测试框架 +- [GoMock](https://github.com/golang/mock) - 谷歌出品的Mock测试框架 +- [GoStub](https://github.com/prashantv/gostub) +- [Monkey](https://github.com/bouk/monkey) +- [Ginkgo](https://github.com/onsi/ginkgo) - BBD 测试框架 +- [fperf](https://github.com/shafreeck/fperf) - 压测工具 +- [gocheck](https://github.com/go-check/check) +- [Testify](https://github.com/stretchr/testify) +- [gotests](https://github.com/cweill/gotests) - Generate Go tests from your source code +- [TestSQL](https://github.com/zhulongcheng/testsql) - 根据 SQL 创建语句生成测试数据 +- [httpmock](https://github.com/jarcoal/httpmock) - HTTP Mock +- [Goblin](https://github.com/franela/goblin) BDD 测试框架 +- [Faker](https://github.com/bxcodec/faker) - Struct Data Fake Generator +- [go-tprof](https://github.com/gokultp/go-tprof) - 包测试报告生成工具 + + +### 错误处理 +- [errors](https://github.com/pkg/errors) +- [errorx](https://github.com/joomcode/errorx) + + +### 安全 +- [Kunpeng](https://github.com/opensec-cn/kunpeng) - 开源POC检测框架 + + +### UUID +- [go.uuid](https://github.com/satori/go.uuid) - UUID 库 +- [SEQSVR](https://github.com/qichengzx/seqsvr) - Go + MySQL 实现的分布式 ID 生成服务 +- [cpuid](https://github.com/klauspost/cpuid) - CPU feature identification for Go +- [google/uuid](https://github.com/google/uuid) - Google 开源的 uuid 包 +- [gofrs/uuid](https://github.com/gofrs/uuid) +- [snowflake](https://github.com/bwmarrin/snowflake) - Twitter snowflake IDs + + +### 日志&收集 +- [Logrus](https://github.com/sirupsen/logrus) - 日志记录包 +- [zerolog](https://github.com/rs/zerolog) +- [zap](https://github.com/uber-go/zap) - Uber 开发的日志记录包 +- [Seelog](https://github.com/cihub/seelog) +- [logkit](https://github.com/qiniu/logkit) - 七牛开源的日志收集工具 +- [gogstash](https://github.com/tsaikd/gogstash) - 类似于 Logstash 的日志收集器 +- [lumberjack](https://github.com/natefinch/lumberjack) + + +### 监控 +- [OpenFalcon](https://github.com/open-falcon/falcon-plus) - 小米开源的监控系统 +- [Prometheus](https://github.com/prometheus/prometheus) - 监控系统 +- [Grafana](https://github.com/grafana/grafana) - 分析监视平台, 支持 Graphite, Elasticsearch, OpenTSDB, Prometheus, InfluxDB 等数据源 +- [TeaWeb](https://github.com/TeaWeb/build) - 一款集静态资源、缓存、代理、统计、监控于一体的可视化智能WebServer +- [Jaeger](https://github.com/jaegertracing/jaeger) - 分布式追踪系统 + + +### 统计分析 +- [Fathom](https://github.com/usefathom/fathom) - Web 站点统计 +- [Signal](https://github.com/bloom42/signal) - Web 站点统计 + + +### 容器技术 +- [Rancher](https://github.com/rancher/rancher) - 全栈化企业级容器管理平台 +- [Gorsair](https://github.com/Ullaakut/Gorsair) +- [docui](https://github.com/skanehira/docui) - TUI Client for Docker + + +### 机器学习 +- [goml](https://github.com/cdipaolo/goml) - 机器学习库 +- [GoLearn](https://github.com/sjwhitworth/golearn) - 一个 "开箱即用" 的机器学习库 +- [glow](https://github.com/chrislusf/glow) - 易用的分布式计算系统 +- [Gobot](https://github.com/hybridgroup/gobot) - 机器人和物理计算语言库 +- [Olivia](https://github.com/olivia-ai/olivia) - 神经网络 +- [Pico](https://github.com/esimov/pigo) - 基于像素强度比较的物体检测纸张的纯 Go 脸部检测库 + + +### 算法 +- [GoDS](https://github.com/emirpasic/gods) +- [Dragonboat](https://github.com/lni/dragonboat) - 多组 Raft 共识算法库 +- [golang-lru](https://github.com/hashicorp/golang-lru) - LRU 算法实现 + + +### 数据结构 +- [go-datastructures](https://github.com/Workiva/go-datastructures) +- [Play-with-Data-Structures](https://github.com/Donng/Play-with-Data-Structures) - 「玩转数据结构」课程的 Go 语言实现版本 +- [HashMap](https://github.com/cornelk/hashmap) +- [SipHash](https://github.com/dchest/siphash) - SipHash-2-4 + + +### 依赖注入 +- [Wire](https://github.com/google/wire) +- [dig](https://github.com/uber-go/dig) +- [Fx](https://github.com/uber-go/fx) + + +### JSON +- [GJSON](https://github.com/tidwall/gjson) - JSON 解释器 +- [SJSON](https://github.com/tidwall/sjson) - JSON 修改工具 +- [fastjson](https://github.com/valyala/fastjson) - fast JSON parser and validator for Go +- [jsonparser](https://github.com/buger/jsonparser) +- [ffjson](https://github.com/pquerna/ffjson) +- [json-iterator](https://github.com/json-iterator/go) - 滴滴开源的 JSON 解析器 + + +### 依赖管理 +- [**goproxy.io**](https://github.com/goproxyio/goproxy) - `GOPROXY` 代理服务 +- [goproxy.cn](https://github.com/goproxy/goproxy.cn) - 更适合国内用户的代理服务 +- [Gopm](https://github.com/gpmgo/gopm) - Go 包管理工具 +- [govendor](https://github.com/kardianos/govendor) - Vendor 包管理工具 +- [gom](https://github.com/mattn/gom) - 包版本管理工具 + + +### 微服务 +- [Istio](https://github.com/istio/istio) [[中文文档](https://preliminary.istio.io/zh/docs/)] - 跨语言微服务框架 +- [goa](https://github.com/goadesign/goa) +- [Micro](https://github.com/micro/micro) - 微服务工具 +- [Go kit](https://github.com/go-kit/kit) - Go 微服务工具集 +- [GoKit CLI](https://github.com/kujtimiihoxha/kit) - Go kit 脚手架 +- [gogo](https://github.com/dolab/gogo) +- [Go-Chassis](https://github.com/go-chassis/go-chassis) +- [Go Micro](https://github.com/micro/go-micro) - 微服务框架 +- [Kite](https://github.com/koding/kite) + + +### 持续集成/部署 +- [CDS](https://github.com/ovh/cds) - 持续集成服务 +- [gopub](https://github.com/linclin/gopub) +- [CodePub](https://github.com/bzppx/bzppx-codepub) +- [syncd](https://github.com/dreamans/syncd) - 代码部署工具 +- [Drone](https://github.com/drone/drone) - 基于 Docker 的持续发布平台 +- [Cyclone](https://github.com/caicloud/cyclone) - 持续集成&发布平台 + + +### Git +- [gogs](https://github.com/gogs/gogs) - 类似于 GitLab 的 Git 服务器 +- [Gitea](https://github.com/go-gitea/gitea) - 由 gogs 分叉出的 Git 服务器 +- [go-git](https://github.com/src-d/go-git) - Go 实现的 Git 操作 +- [gitin](https://github.com/isacikgoz/gitin) - commit/branch/status explorer for git +- [hub](https://github.com/github/hub) - GitHub 命令行工具 +- [git-o-matic](https://github.com/muesli/gitomatic) - 一个监控 Git 仓库变化和自动 pull/push 的工具 + + +### 限流器 +- [**Tollbooth**](https://github.com/didip/tollbooth) - Simple middleware to rate-limit HTTP requests +- [ratelimit](https://github.com/juju/ratelimit) +- [RateLimit](https://github.com/bsm/ratelimit) +- [go-rate](https://github.com/beefsack/go-rate) +- [Circuit](https://github.com/cep21/circuit) - 熔断器 + + +### 解释器 +- [**participle**](https://github.com/alecthomas/participle) - 通用的自定义语法解析包 +- [GopherLua](https://github.com/yuin/gopher-lua) - VM and compiler for Lua in Go +- [go-lua](https://github.com/Shopify/go-lua) - A Lua VM in pure Go +- [php-parser](https://github.com/z7zmey/php-parser) - PHP AST 语法解析 +- [otto](https://github.com/robertkrimen/otto) - JavaScript 解释器 +- [goja](https://github.com/dop251/goja) - ECMAScript 5.1(+) implementation in Go +- [gpython](https://github.com/go-python/gpython) - Python Interpreter on Go +- [starlark-go](https://github.com/google/starlark-go) - Starlark in Go +- [avo](https://github.com/mmcloughlin/avo) - Generate x86 Assembly with Go +- [wagon](https://github.com/go-interpreter/wagon) - WebAssembly 解释器 +- [GopherJS](https://github.com/gopherjs/gopherjs) - 把 Go 代码编译成 JavaScript 代码 +- [Yaegi](https://github.com/containous/yaegi) - Go 语言解释器 + +#### 自定义解释器 +- [Math-Engine](https://github.com/dengsgo/math-engine) - 使用 Go 实现的数学表达式解析计算引擎库,学习语法解析很适用 +- [Gval](https://github.com/PaesslerAG/gval) - 表达式计算 +- [expression-parsing](https://github.com/vighneshq/expression-parsing) +- [goexp](https://github.com/svstanev/goexp) - Recursive descent expression parser in Go +- [goastch](https://github.com/helloyi/goastch) - Go AST 语法解析 +- [tdop](https://github.com/cristiandima/tdop) +- [swallow](https://github.com/hwch/swallow) +- [Anko](https://github.com/mattn/anko) +- [Expr](https://github.com/antonmedv/expr) - 编译&执行字符串中的表达式 +- [Tengo](https://github.com/d5/tengo) - 用 Go 编写的脚本语言 +- [V](https://github.com/vlang/v) - Go 编写的语言 +- [kumarUjjawal/bison](https://github.com/kumarUjjawal/bison) + + +### 查询语言 +- [graphql](https://github.com/graphql-go/graphql) - Go 实现的 GraphQL +- [RQL](https://github.com/a8m/rql) - REST 资源查询语言 +- [Thunder](https://github.com/samsarahq/thunder) - GraphQL 服务构建框架 + + +### 游戏相关 +- [Nano](https://github.com/lonng/nano) - 游戏开发框架 +- [Leaf](https://github.com/name5566/leaf) +- [einx](https://github.com/Cyinx/einx) + + +### 桌面开发 +- [Lorca](https://github.com/zserge/lorca) - 用 Go 编写 HTML5 桌面程序,依赖 Chrome 进行 UI 渲染,但却不把 Chrome 打包到应用中 +- [webview](https://github.com/zserge/webview) - 用 Go 构建跨平台的桌面软件 +- [walk](https://github.com/lxn/walk) - Windows GUI toolkit +- [go-gtk](https://github.com/mattn/go-gtk) - Go bindings for GTK +- [ui](https://github.com/andlabs/ui) - Platform-native GUI library for Go +- [fyne](https://github.com/fyne-io/fyne) - Cross platform GUI in Go based on Material Design +- [go-gl](https://github.com/go-gl/gl) - Go bindings for OpenGL (generated via glow) +- [therecipe/qt](https://github.com/therecipe/qt) - 基于 Qt 的跨全平台 UI 包 + + +### 任务/定时器 +- [Grift](https://github.com/markbates/grift) - Go based task runner + + +### 微信 +- [weapp](https://github.com/medivhzhan/weapp) - 微信小程序 SDK + + +### 未归类 +- [Robotgo](https://github.com/go-vgo/robotgo) - Golang 跨平台自动化系统,控制键盘鼠标位图和读取屏幕,窗口句柄以及全局事件监听 +- [cron](https://github.com/robfig/cron) - a cron library for go +- [goCron](https://github.com/jasonlvhit/gocron) - A Golang Job Scheduling Package +- [com](https://github.com/Unknwon/com) - 工具包 +- [php2go](https://github.com/syyongx/php2go) - Go 实现的 140+ 个 PHP 函数功能包 +- [gommon](https://github.com/labstack/gommon) - Common packages for Go +- [**Go Report Card**](https://github.com/gojp/goreportcard) - Go 项目质量分析报告工具 +- [i18n](https://github.com/Unknwon/i18n) - `i18n` 多语言工具包 +- [Paginater](https://github.com/Unknwon/paginater) - 分页工具 +- [gls](https://github.com/jtolds/gls) - Goroutine local storage +- [go-version](https://github.com/mcuadros/go-version) - 版本号比较 +- [reflect2](https://github.com/modern-go/reflect2) - reflect api without runtime reflect.Value cost +- [mapstructure](https://github.com/mitchellh/mapstructure) - Go library for decoding generic map values into native Go structures +- [copier](https://github.com/jinzhu/copier) - struct 之间拷贝值 +- [Cast](https://github.com/spf13/cast) - 数据类型转换 +- [Metabolize](https://github.com/keighl/metabolize) - Decodes HTML meta tags into a Golang struct +- [otp](https://github.com/pquerna/otp) - 一次性密码工具包(One Time Password utilities) +- [feeds](https://github.com/gorilla/feeds) - RSS 内容生成 +- [gofeed](https://github.com/mmcdole/gofeed) - RSS & Atom feeds 内容解析 +- [wechat-go](https://github.com/songtianyi/wechat-go) - 微信 Web 版 API 的 Go 实现 +- [misspell](https://github.com/client9/misspell) - 常拼写错误的英语单词 +- [Standard Go Project Layout](https://github.com/golang-standards/project-layout) - Go 项目目录结构示例 +- [CRDT](https://github.com/neurodrone/crdt) - CRDT(Convergent and Commutative Replicated Data Types)最终一致性算法的实现 +- [script](https://github.com/bitfield/script) - Making it easy to write shell-like scripts in Go +- [revive](https://github.com/mgechev/revive) - 代码检查分析 + + +## 工具 +- [goenv](https://github.com/syndbg/goenv) - Go 版本管理 +- [GoLand](https://www.jetbrains.com/go/) - IDE 软件 +- [~~IntelliJ系列软件Go语言插件~~](https://github.com/go-lang-plugin-org/go-lang-idea-plugin) + + +## 资源站点 +- [Go 语言中文网](http://studygolang.com) +- [GoCN](https://gocn.io)