An open API service indexing awesome lists of open source software.

https://github.com/jobbole/awesome-go-cn

Go 资源大全中文版, 内容包括:Web框架、模板引擎、表单、身份认证、数据库、ORM框架、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析、教程和(电子)书等。由「开源前哨」和「Go开发大全」微信团队维护。
https://github.com/jobbole/awesome-go-cn

List: awesome-go-cn

go golang

Last synced: about 1 year ago
JSON representation

Go 资源大全中文版, 内容包括:Web框架、模板引擎、表单、身份认证、数据库、ORM框架、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析、教程和(电子)书等。由「开源前哨」和「Go开发大全」微信团队维护。

Awesome Lists containing this project

README

          

【导读】:[awesome-go](https://github.com/avelino/awesome-Go) 就是 `avelino` 发起维护的 Go 资源列表,内容包括:音频和音乐库、命令行工具、服务端应用、流处理、持续集成、数据库、机器学习、NLP、物联网、中间件、文本处理、安全、机器人技术等。

这个列表堪称最全面的 Go 资源汇总,在 GitHub 已有近 `6 万 Star`。

中文版由`开源前哨`和`Go开发大全`微信公号团队维护更新,在 GitHub 已有近`3100 Star`,欢迎在 Github 上关注。这个中文版的资源库会定期同步更新到这里。

#### 本项目的参与者

- 维护者:`开源前哨`和`Go开发大全`微信公号团队。 「开源前哨」会定期在知乎专栏分享最新、有趣和热门的开源项目,每个项目都有详细的介绍和示例。传送门:

- 贡献者: [xiaokugua250](https://github.com/xiaokugua250)、[艾凌风](https://github.com/hanxiaomax)、[Allenxuxu](https://github.com/Allenxuxu)、[sanrentai](https://github.com/sanrentai)、[wu.zhenhuan](https://github.com/hawkwzh)、[tangyouhua](https://github.com/tangyouhua)、[roseduan](https://github.com/roseduan)、You

注:名单不分排名,不定期补充更新

# 资源列表

- [目录](#目录)
- [音频和音乐库](#音频和音乐库)
- [认证和OAuth授权](#认证和oauth授权)
- [机器人相关](#机器人相关)
- [命令行工具](#命令行工具)
- [标准 CLI](#标准-cli)
- [高级控制台UI](#高级控制台ui)
- [配置管理](#配置管理)
- [持续集成](#持续集成)
- [css预处理](#css预处理)
- [数据结构](#数据结构)
- [数据库](#数据库)
- [数据库工具](#数据库工具)
- [SQL 查询语句构建库](#sql-查询语句构建库)
- [数据库驱动](#数据库驱动)
- [日期和时间](#日期和时间)
- [分布式系统](#分布式系统)
- [动态DNS](#动态dns)
- [邮件库](#邮件库)
- [脚本语言与嵌入式编程](#脚本语言与嵌入式编程)
- [错误处理](#错误处理)
- [文件处理](#文件处理)
- [金融领域相关库](#金融领域相关库)
- [表单](#表单)
- [函数式编程](#函数式编程)
- [游戏开发](#游戏开发)
- [代码生成与泛型](#代码生成与泛型)
- [位置信息与地理GEO处理库](#位置信息与地理geo处理库)
- [Goroutines](#goroutines)
- [GUI](#gui)
- [硬件](#硬件)
- [Images 图像处理](#images-图像处理)
- [物联网(IOT)](#物联网iot)
- [作业调度](#作业调度)
- [JSON](#json)
- [Logging 日志库](#logging-日志库)
- [机器学习](#机器学习)
- [Microsoft Office](#microsoft-office)
- [EXCEL](#excel)
- [其他杂项](#其他杂项)
- [依赖性注入](#依赖性注入)
- [项目结构](#项目结构)
- [字符串处理](#字符串处理)
- [暂未分类](#暂未分类)
- [自然语言处理](#自然语言处理)
- [网络相关库](#网络相关库)
- [Http Client](#http-client)
- [OpenGL](#opengl)
- [ORM](#orm)
- [Go语言包管理](#go语言包管理)
- [查询语句](#查询语句)
- [资源嵌入](#资源嵌入)
- [数据分析与数据科学](#数据分析与数据科学)
- [安全领域相关库](#安全领域相关库)
- [序列化](#序列化)
- [服务端应用](#服务端应用)
- [流处理](#流处理)
- [模板引擎](#模板引擎)
- [测试相关](#测试相关)
- [文本处理](#文本处理)
- [第三方API](#第三方api)
- [工具库](#工具库)
- [UUID](#uuid)
- [校验库](#校验库)
- [版本控制](#版本控制)
- [视频](#视频)
- [web框架](#web框架)
- [中间件](#中间件)
- [中间件](#中间件-1)
- [创建http中间件的代码库](#创建http中间件的代码库)
- [路由](#路由)
- [WebAssembly](#webassembly)
- [Windows](#windows)
- [XML](#xml)
- [相关工具](#相关工具)
- [代码分析](#代码分析)
- [编辑器插件](#编辑器插件)
- [Go 代码生成工具](#go--代码生成工具)
- [Go工具](#go工具)
- [软件包](#软件包)
- [devops 工具](#devops-工具)
- [其他软件库和软件包](#其他软件库和软件包)

## 音频和音乐库
* [flac](https://github.com/mewkiz/flac) : 原生`Go`语言编写的FLAC数据流编码与解码器。
* [gaad](https://github.com/Comcast/gaad) : 原生`Go`语言编写的AAC比特流解析器。
* [go-sox](https://github.com/krig/go-sox) : `libsox`库的`go`语言封装
* [GoAudio](https://github.com/DylanMeeus/GoAudio) : 原生`Go`语言编写的音频处理库。
* [gosamplerate](https://github.com/dh1tw/gosamplerate) : `libsamplerate`库的`Go`语言封装
* [id3v2](https://github.com/bogem/id3v2) :`go`语言开发的`ID3`编码和解码库,具有快速和稳定的特性。
* [malgo](https://github.com/gen2brain/malgo) :`go`语言开发的迷你音频库。
* [minimp3](https://github.com/tosone/minimp3) : 轻量级`MP3`解码库。
* [mix](https://github.com/go-mix/mix) : 针对音乐类应用程序的基于序列的`Go`原生音频混音器。
* [mp3](https://github.com/tcolgate/mp3) : 原生Go语言的mp3解码器.
* [music-theory](https://github.com/go-music-theory/music-theory) : 基于`go`语言音乐理论模型。
* [Oto](https://github.com/hajimehoshi/oto) : 可用于在多个平台上播放音频的底层库
* [PortAudio](https://github.com/gordonklaus/portaudio) : 音频`I/O`库`PortAudio`的`go`语言封装
* [portmidi](https://github.com/rakyll/portmidi) : 音频`I/O`库`PortMidi`的`go`语言封装
* [vorbis](https://github.com/mccoyst/vorbis) : `Go`语言版`Vorbis`解码器(使用到`CGO`,但并不依赖与cgo)
* [waveform](https://github.com/mdlayher/waveform) : 基于音频流来生成音频波形图的`go`语言库
----
## 认证和OAuth授权
* [authboss](https://github.com/volatiletech/authboss) : 针对`web`应用的模块化认证系统,尽量去除模版代码和硬编码来以灵活可配置的方式来嵌入到web应用程序中,从而避免重复编码和重复配置。
* [branca](https://github.com/hako/branca) : `Branca Tokens`的`Golang`实现。
* [casbin](https://github.com/hsluoyz/casbin) : 支持`ACL`、`RBAC`、`ABAC`等访问控制模型的授权与认证库。
* [cookiestxt](https://github.com/mengzhuo/cookiestxt) : 支持`cookies.txt` 文件格式的解析器。
* [go-email-normalizer](https://github.com/dimuska139/go-email-normalizer) : 用于支持电子邮件地址的规范表示的`Golang`库,。
* [go-guardian](https://github.com/shaj13/go-guardian) : Go-Guardian支持以简洁又清晰的方式来进行`API`认证和`web`认证,认证模型支持`LDAP`、`Basic`、`Bearer token`和基于证书的认证
* [go-jose](https://github.com/square/go-jose) : 相当完整地实现了JOSE工作组的`JSON Web Token`、`JSON Web Signatures`和`JSON Web Encryption`规范。
* [go-oauth2-server](https://github.com/RichardKnop/go-oauth2-server) : 不需要其他依赖的、符合规范的、用`Golang` 编写的`OAuth2` 服务器。
* [gologin](https://github.com/dghubble/gologin) : 适用于OAuth1和OAuth2多身份登录认证的实现方案
* [gorbac](https://github.com/mikespook/gorbac) : Golang中一个轻量级的基于角色的访问控制`(RBAC)`实现。
* [goth](https://github.com/markbates/goth) : 以简单、干净、常用的方式来使用`OAuth`和`OAuth2`。支持多种身份认证。
* [httpauth](https://github.com/goji/httpauth) : `HTTP`认证中间件
* [jeff](https://github.com/abraithwaite/jeff) : 简单、灵活、安全、习惯性的`Web`会话管理,支持可插拔的后端。
* [jwt](https://github.com/robbert229/jwt) : 干净且易于使用的JSON网络令牌`JWT`的实现。
* [jwt](https://github.com/pascaldekloe/jwt) : 轻量级`JSON`网络令牌(`JWT`)库。
* [jwt](https://github.com/cristalhq/jwt) : 针对go语言的 安全、简单、快速的JSON Web Tokens 。
* [jwt-auth](https://github.com/adam-hanna/jwt-auth) : 用于`Golang http`服务器的`JWT`中间件,有许多配置选项。
* [jwt-go](https://github.com/dgrijalva/jwt-go) : -`JSON Web Tokens`(JWT)的Golang实现。
* [loginsrv](https://github.com/tarent/loginsrv) : JWT登录微服务,具有可插拔的后端,如`OAuth2 (Github)`、`htpasswd`、`OSIAM`。
* [oauth2](https://github.com/golang/oauth2) : 继承自`goauth2`。实现了JWT,Google APIs,GCE,GAE的通用`OAuth 2.0`授权包。
* [osin](https://github.com/openshift/osin) :` Go`语言` OAuth2` 服务器库
* [otpgo](https://github.com/jltorresm/otpgo) : 基于时间的一次性密码`TOTP`和基于`HMAC` 的一次性密码`HOTP`库。
* [paseto](https://github.com/o1egl/paseto) : 平台无关的安全令牌`(PASETO)`的`Golang`实现。
* [permissions2](https://github.com/xyproto/permissions2) : 用于跟踪用户、登录状态和权限的库,依赖安全`cookies`和`bcrypt`。
* [rbac](https://github.com/zpatrick/rbac) : 用于Go应用程序的极简`RBAC`库。
* [scope](https://github.com/SonicRoshan/scope) : 在`Go`中轻松管理`OAuth2`作用域。
* [scs](https://github.com/alexedwards/scs) : `HTTP`服务器的会话管理器。
* [securecookie](https://github.com/chmike/securecookie) : 高效的安全`cookie`编码/解码库。
* [session](https://github.com/icza/session) : `Go` 语言会话管理(支持`Google App Engine - GAE`)
* [sessiongate-go](https://github.com/f0rmiga/sessiongate-go) : 使用` SessionGate Redis`模块进行` Go`会话管理。
* [sessions](https://github.com/adam-hanna/sessions) : 为`Go`语言`HTTP` 服务器开发的非常简单的、高性能的、高可定制的会话服务
* [sessionup](https://github.com/swithek/sessionup) : 简单而有效的`HTTP`会话管理和标识库。
* [sjwt](https://github.com/brianvoe/sjwt) : - 简单的`jwt`生成器和解析器。
----
## 机器人相关
` 构建和使用机器人的库`
* [ephemeral-roles](https://github.com/ewohltman/ephemeral-roles) : 根据语音频道成员是否出现来管理临时角色的机器人。
* [go-chat-bot](https://github.com/go-chat-bot/bot) : 用`Go` 编写的`IRC`、`Slack` 和`Telegram`机器人。
* [go-joe](https://joe-bot.net) : 受 Hubot 启发,用 Go 编写的通用型机器人库。
* [go-sarah](https://github.com/oklahomer/go-sarah) : 为聊天服务如`LINE`、`Slack`、`Gitter` 等构建机器人的框架。
* [go-tgbot](https://github.com/olebedev/go-tgbot) : 由swagger文件、基于会话的路由器和中间件生成的纯`Golang`实现的`Telegram`机器人API封装。
* [go-twitch-irc](https://github.com/gempir/go-twitch-irc) : 用于编写`twitch.tv`聊天机器人的库。
* [Golang CryptoTrading Bot](https://github.com/saniales/golang-crypto-trading-bot) :` golang`实现的基于控制台的加密货币交易所交易机器人库
* [govkbot](https://github.com/nikepan/govkbot) : 简单的`Go VK`机器人库。
* [hanu](https://github.com/sbstjn/hanu) : 用于编写`Slack`机器人的框架。
* [Kelp](https://github.com/stellar/kelp) : `Stellar DEX`的官方交易机器人。开箱即用,用Golang编写,兼容中心化交易所和自定义交易策略。
* [margelet](https://github.com/zhulik/margelet) : 用于构建`Telegram`机器人的框架。
* [micha](https://github.com/onrik/micha) : 封装`Telegram`机器人api的`Go`库。
* [olivia](https://github.com/olivia-ai/olivia) : 一个用人工神经网络构建的聊天机器人。
* [slacker](https://github.com/shomali11/slacker) : 用于创建`Slack`机器人的简单易用框架。
* [slackscot](https://github.com/alexandre-normand/slackscot) : 构建`Slack`机器人的框架。
* [tbot](https://github.com/yanzay/tbot) : `Telegram`机器人服务器,其API类似于`net/http`。
* [telebot](https://github.com/tucnak/telebot) : 用`Go`编写的`Telegram`机器人框架。
* [telegram-bot-api](https://github.com/Syfaro/telegram-bot-api) : 简单干净的`Telegram`机器人客户端。
* [Tenyks](https://github.com/kyleterry/tenyks) : 使用`Redis` 和`JSON`进行消息传递的面向服务的` IRC`机器人。
----
## 命令行工具
### 标准 CLI
`用于创建一个标准命令行应用程序的库`
* [1build](https://github.com/gopinath-langote/1build) : 管理项目专用命令的命令行工具。
* [argparse](https://github.com/akamensky/argparse) : 受`Python`的`argparse`模块启发的命令行参数解析器。
* [argv](https://github.com/cosiner/argv) : 用于分隔使用` bash `的语法的命令行字符串并将其作为参数的`Go `语言库,
* [cli](https://github.com/mkideal/cli) : 功能强大,使用简单的命令行软件库,基于`Golang `结构体`tag`实现
* [cli](https://github.com/teris-io/cli) : 一个功能丰富、易于使用的命令行工具包
* [climax](http://github.com/tucnak/climax) : 可以显示“人脸”的命令替代库。
* [clîr](https://github.com/leaanthony/clir) : 一个简单而清晰的` CLI `库,不需要其他依赖。
* [cmd](https://github.com/posener/cmd) : 扩展了标准`flag`包,具有支持子命令的特性
* [cmdr](https://github.com/hedzr/cmdr) : 一个`POSIX/GNU`风格,类似于`getopt`的命令行UI的Go库。
* [cobra](https://github.com/spf13/cobra) : 一个现代化的命令行。
* [commandeer](https://github.com/jaffee/commandeer) : 开发友好的`CLI`应用程序:基于结构字段和标签设置标志参数、默认值和用法。
* [complete](https://github.com/posener/complete) : 使用 `Go `语言编写的` bash` 命令补全工具以及` Go `命令补全工具
* [Dnote](https://github.com/dnote/dnote) : 支持多设备同步的命令行笔记工具。
* [env](https://github.com/codingconcepts/env) : 基于`tag`的结构体环境配置。
* [flag](https://github.com/cosiner/flag) : 简单而强大的`Go`命令行选项解析库,支持子命令。
* [flaggy](https://github.com/integrii/flaggy) : 功能强大的`flag`包,具有出色的子命令支持。
* [flagvar](https://github.com/sgreben/flagvar) : `Go`标准标志包的标志参数类型集合。
* [go-arg](https://github.com/alexflint/go-arg) : `Go`中基于结构体的参数解析。
* [go-commander](https://github.com/yitsushi/go-commander) : 用于简化` CLI `工作流程的 `Go` 库。
* [go-flags](https://github.com/jessevdk/go-flags) : ` GO`命令行选项解析器。
* [go-getoptions](https://github.com/DavidGamba/go-getoptions) : `Go` 选项解析器,灵感来自 `Perl `中灵活性的 `GetOpt::Long `。
* [gocmd](https://github.com/devfacet/gocmd) : 用于构建命令行应用程序的 `Go `库。
* [hiboot cli](https://github.com/hidevopsio/hiboot/tree/master/pkg/app/cli) : 具有自动配置和依赖注入功能的 cli 应用程序框架。
* [job](https://github.com/liujianping/job) : 将你的短期命令转化为长期作业。
* [kingpin](https://github.com/alecthomas/kingpin) : 支持子命令的命令行和标志位解析器。
* [liner](https://github.com/peterh/liner) : 命令行文本解析器
* [mitchellh/cli](https://github.com/mitchellh/cli) : 用于实现命令行交互的 `Go `语言库
* [mow.cli](https://github.com/jawher/mow.cli) : 用于构建命令行程序的工具库,支持更加精准的标记及选项解析和验证
* [ops](https://github.com/nanovms/ops) : `Unikernel `编辑器和生成器
* [pflag](https://github.com/spf13/pflag) : Go flag软件包的替代品, 实现了`POSIX/GNU`风格的`flags`.
* [sand](https://github.com/Zaba505/sand) : 用于创建解释器等工具的简单API库。
* [sflags](https://github.com/octago/sflags) : 基于结构体的 `flag `生成器,支持`flag, urfave/cli, pflag, cobra, kingpin`等其他库
* [strumt](https://github.com/antham/strumt) : 用于创建提示链的库。
* [ts](https://github.com/liujianping/ts) : 时间戳转换和比较工具。
* [ukautz/clif](https://github.com/ukautz/clif) : 一个小型命令行程序开发框架
* [urfave/cli](https://github.com/urfave/cli) : 简单、快速、有趣的、用于构建 Go 语言命令行程序的软件包。
* [wlog](https://github.com/dixonwille/wlog) : 简单的日志接口,具有跨平台和并发支持等特性
* [wmenu](https://github.com/dixonwille/wmenu) : 为命令行程序提供简单的菜单结构选项来提供给用户来进行选择
----
## 高级控制台UI
`用于构建控制台应用程序和控制台用户界面的库.`
* [asciigraph](https://github.com/guptarohit/asciigraph) : 没有其他依赖的可以在命令行应用中制作轻量级的`ASCII`行图┈┈╭╯的go语言工具包
* [aurora](https://github.com/logrusorgru/aurora) : `ANSI` 终端颜色,支持 `fmt.Printf/Sprintf`
* [cfmt](https://github.com/mingrammer/cfmt) : 受`bootstrap`颜色类启发的上下文`fmt`。
* [cfmt](https://github.com/i582/cfmt) : 简单方便的格式化风格化输出,与`fmt`库完全兼容
* [chalk](https://github.com/ttacon/chalk) : 符合直觉的用于美化命令行输出的库
* [colourize](https://github.com/TreyBastian/colourize) : 支持终端输出带色彩的`ANSI`字符。
* [ctc](https://github.com/wzshiming/ctc) : 非侵入式的跨平台终端颜色库,不需要修改打印方法
* [go-ataman](https://github.com/workanator/go-ataman) : 用于在终端中渲染` ANSI` 彩色文本模板的` Go` 库。
* [go-colorable](https://github.com/mattn/go-colorable) : ` Windows `上使用的可以输出彩色文本的库
* [go-colortext](https://github.com/daviddengcn/go-colortext) : 用于在终端进行多彩文字输出的库
* [go-isatty](https://github.com/mattn/go-isatty) : `go`语言版本的`isatty`
* [go-prompt](https://github.com/c-bata/go-prompt) : 受 [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit) 的启发,用于构建强大的交互式提示符的go语言库
* [gocui](https://github.com/jroimartin/gocui) : 极简的控制台用户界面创建库.
* [gommon/color](https://github.com/labstack/gommon/tree/master/color) :多样的命令行文本
* [gookit/color](https://github.com/gookit/color) : 格式化终端文本。
* [mpb](https://github.com/vbauerster/mpb) : 为命令行提供多个进度条的工具
* [progressbar](https://github.com/schollz/progressbar) : 适用于各种操作系统的,线程安全进度条管理库。
* [pterm](https://github.com/pterm/pterm) : 在每个平台上美化控制台输出的库,有许多可组合的组件。
* [simpletable](https://github.com/alexeyco/simpletable) : 在终端中用`Go`实现简单的表格。
* [tabby](https://github.com/cheynewallace/tabby) : 超级简单的`Golang`表格的库。
* [table](https://github.com/tomlazar/table) : 基于终端颜色的表格库。
* [tabular](https://github.com/InVisionApp/tabular) : 从命令行工具中打印`ASCII`表格,而不需要向`API`传递大量数据集。
* [termbox-go](https://github.com/nsf/termbox-go) : Termbox是一个用于创建跨平台文本界面的库。
* [termdash](https://github.com/mum4k/termdash) : 基于 `termbox-go `的 `Go` 终端仪表盘,灵感来自 [termui](https://github.com/gizak/termui) 。
* [termui](https://github.com/gizak/termui) : 基于 `termbox-go` 的 `Go` 终端仪表盘,灵感来源于[blessed-contrib](https://github.com/yaronn/blessed-contrib) 。
* [uilive](https://github.com/gosuri/uilive) : 用于实时更新终端输出的库
* [uiprogress](https://github.com/gosuri/uiprogress) :用于渲染进度条的库
* [uitable](https://github.com/gosuri/uitable) : 用于改善命令行中,表格数据可读性的库
* [yacspin](https://github.com/theckman/yacspin) : 用于终端的`CLi Spinner` 工具包。
----
## 配置管理
`配置解析库`
* [aconfig](https://github.com/cristalhq/aconfig) : 简单、有用的配置加载器。
* [cleanenv](https://github.com/ilyakaznacheev/cleanenv) : 简约的配置读取器(从文件、`ENV`以及任何你想要的地方读取)。
* [config](https://github.com/golobby/config) : 一个轻量级但功能强大的`Go`项目配置包。
* [config](https://github.com/JeremyLoy/config) : 云端本地应用配置。只需两行就可以将ENV绑定到结构上
* [config](https://github.com/olebedev/config) : 具有环境变量和标志解析功能的`JSON`或`YAML`配置包装器。
* [configuration](https://github.com/BoRuDar/configuration) : 用于从环境变量、文件、标志和 "默认 "标签初始化配置结构的库。
* [configure](https://github.com/paked/configure) : 可以通过多种途径进行配置,包括 `JSON` 标记位以及环境变量
* [configuro](https://github.com/sherifabdlnaby/configuro) : 来自`ENV`和`Files`的意见性配置加载和验证框架,专注于`12-Factor`兼容应用程序。
* [confita](https://github.com/heetch/confita) : 从多个后端级联加载配置到一个结构中。
* [conflate](https://github.com/the4thamigo-uk/conflate) : 从任意URL合并多个`JSON/YAML/TOML`文件的库/工具,对`JSON`模式进行验证,并应用模式中定义的默认值。
* [env](https://github.com/caarlos0/env) : 解析环境变量为` Go` 语言结构体
* [envcfg](https://github.com/tomazk/envcfg) : 解析环境变量为 `Go` 语言结构体
* [envconf](https://github.com/ian-kent/envconf) : 通过环境变量来配置
* [envconfig](https://github.com/vrischmann/envconfig) : 通过环境变量读取配置
* [envh](https://github.com/antham/envh) : 管理环境变量的助手
* [fig](https://github.com/kkyr/fig) : 用于从文件和环境变量中读取配置的小型库(带有验证和默认值)。
* [gcfg](https://github.com/go-gcfg/gcfg) : 读取类似 ` INI ` 类型的配置文件为 `Go `语言结构体,支持自定义类型。
* [genv](https://github.com/sakirsensoy/genv) : 通过 `dotenv` 支持轻松读取环境变量。
* [go-aws-ssm](https://github.com/PaddleHQ/go-aws-ssm) : 从` AWS System Manager - Parameter Store` 获取参数的` Go` 包。
* [go-ini](https://github.com/subpop/go-ini) : Go 包,可对 INI 文件进行整理和解整理。
* [go-ssm-config](https://github.com/ianlopshire/go-ssm-config) : 用于从 `AWS SSM`(参数存储)加载配置参数的 `Go `工具。
* [go-up](https://github.com/ufoscout/go-up) : 一个简单的配置库,具有递归占位符解析功能,没有各种怪招。
* [goConfig](https://github.com/crgimenes/goConfig) : 解析一个结构作为输入,并将命令行、环境变量和配置文件中的参数填充到该结构的字段中。
* [godotenv](https://github.com/joho/godotenv) : 把 ` Ruby `的 `dotenv `库移植到 `Go `(从 `.env `中加载环境变量)。
* [gofigure](https://github.com/ian-kent/gofigure) : 让` Go` 语言应用程序配置变得简单
* [gone/jconf](https://github.com/One-com/gone/tree/master/jconf) : 模块化 JSON 配置工具。允许你将配置参数结构体和使用它的代码放在一起,而不需要让主配置文件了解所有子模块的细节来进行序列
* [gookit/config](https://github.com/gookit/config) : 应用程序配置管理(`load,get,set`),支持`JSON、YAML、TOML、INI、HCL`
* [harvester](https://github.com/beatlabs/harvester) : `Harvester,`一个易于使用的静态和动态配置包,支持 `envars` 和 `Consul` 集成。
* [hjson](https://github.com/hjson/hjson-go) : 便于程序员使用和阅读的配置文件格式。具有更加轻松的语法,更少的错误和更多的注释
* [hocon](https://github.com/gurkankaymak/hocon) : 用于使用`HOCON`(一种人类友好的JSON超集)格式的配置库,支持环境变量、引用其他值、注释和多文件等功能。
* [ingo](https://github.com/schachmat/ingo) : 将配置标记持久化到一个类似 `ini `的文件中
* [ini](https://github.com/go-ini/ini) : 用于读写INI 文件的库
* [joshbetz/config](https://github.com/joshbetz/config) : 消息配置库,可以解析环境变量、`JSON `文件并根据`SIGHUP`自动重新载入
* [kelseyhightower/envconfig](https://github.com/kelseyhightower/envconfig) : 用于管理环境变量配置数据的` Go` 库。
* [koanf](https://github.com/knadh/koanf) : 轻量级、可扩展的库,用于读取Go应用程序中的配置。内置支持`JSON、TOML、YAML、env`、命令行。
* [konfig](https://github.com/lalamove/konfig) : 为分布式处理时代的` Go `提供可组合、可观察和可执行的配置处理。
* [mini](https://github.com/sasbury/mini) : 用于解析类 `ini ` 文件的库
* [nasermirzaei89/env](https://github.com/nasermirzaei89/env) : 用于读取环境变量的简单实用包
* [onion](http://github.com/goraz/onion) : 基于分层结构的Go配置库,支持`JSON、TOML、YAML、properties、etcd、env`以及使用`PGP`加密。
* [store](https://github.com/tucnak/store) : ` Go`的轻量级配置管理器,支持`JSON、TOML、YAML、properties`等。
* [swap](https://github.com/oblq/swap) : 基于构建环境,递归地实例化/配置结构解析库。
* [typenv](https://github.com/diegomarangoni/typenv) : 简约、零依赖、类型化的环境变量库。
* [viper](https://github.com/spf13/viper) :` Go `语言配置工具
* [xdg](https://github.com/OpenPeeDeeP/xdg) : 遵守` XDG` 标准 的配置工具[XDG 标准](https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html)
----
## 持续集成
`持续集成的辅助工具`
* [CDS](https://github.com/ovh/cds) : 企业级`CI/CD`和`DevOps`自动化开源平台。
* [drone](https://github.com/drone/drone) : ` Drone` 是一个基于` Docker`的持续集成平台,使用 `Go `语言编写
* [duci](https://github.com/duck8823/duci) : 简单的`ci`服务器,不需要特定领域的语言。
* [gomason](https://github.com/nikogura/gomason) : 从一个干净的工作空间测试、构建、签署和发布你的`go`二进制文件
* [goveralls](https://github.com/mattn/goveralls) : `Coveralls.io `是一个持续代码覆盖率检测系统,这个库提供了 `Go `语言的支持
* [overalls](https://github.com/go-playground/overalls) : 针对多`package` 的` Go` 语言项目,为 `Goveralls` 这样的工具生成覆盖率报告
* [roveralls](https://github.com/LawrenceWoodman/roveralls) : 回归覆盖测试工具
----
## CSS预处理
`预处理css文件的库`
* [gcss](https://github.com/yosssi/gcss) : 纯 `Go` 语言编写的 `CSS `预处理器
* [go-libsass](https://github.com/wellington/go-libsass) : 100%兼容 `Sass` 的库 `libsass` 的` Go` 语言封装
----
## 数据结构
`go语言实现的数据结构与算法`
* [algorithms](https://github.com/shady831213/algorithms) : 算法和数据结构学习资料
* [binpacker](https://github.com/zhuangsirui/binpacker) : 二进制数据封包拆包工具,帮你构建自定义的二进制数据流
* [bit](https://github.com/yourbasic/bit) : ` Go `语言集合数据结构。提供了额外的位操作功能
* [bitset](https://github.com/willf/bitset) : 实现了 `bitset `的 `Go `语言包.
* [bloom](https://github.com/zhenjl/bloom) : `Go `语言实现的布隆过滤器(`bloom filter`)
* [bloom](https://github.com/yourbasic/bloom) : `Go `语言实现的布隆过滤器
* [boomfilters](https://github.com/tylertreat/BoomFilters) : 概率统计数据结构,用于处理大量连续的数据。
* [cmap](https://github.com/lrita/cmap) : 一个用于`go`的线程安全的并发地图,支持使用`interface{}`作为键
* [concurrent-writer](https://github.com/free/concurrent-writer) : `bufio.Writer`的高并发`drop-in`替代品
* [conjungo](https://github.com/InVisionApp/conjungo) : 一个小巧、强大、灵活的合并库。
* [count-min-log](https://github.com/seiflotfy/count-min-log) : ` Go `语言实现的 `Count-Min-Log sketch `算法(类似 Count-Min sketch 算法,但是使用的内存更少)
* [crunch](https://github.com/superwhiskers/crunch) : `Go`包,实现缓冲区,方便处理各种数据类型。
* [cuckoofilter](https://github.com/seiflotfy/cuckoofilter) : ` Cuckoo `过滤器:一个用go语言实现的计数布隆过滤器的替代品
* [deque](https://github.com/edwingeng/deque) : 高度优化的双端队列。
* [deque](https://github.com/gammazero/deque) : 快速的环形缓冲区` deque`(双端队列)。
* [dict](https://github.com/srfrog/dict) : `Go` 的类似` Python `的字典` (dict)`
* [encoding](https://github.com/zhenjl/encoding) : 整型压缩库
* [go-adaptive-radix-tree](https://github.com/plar/go-adaptive-radix-tree) : `Go `语言实现的自适应基数树
* [go-datastructures](https://github.com/Workiva/go-datastructures):一组有用的、高性能的、线程安全的数据结构
* [go-edlib](https://github.com/hbollon/go-edlib) : 与 Unicode 兼容的 Go 字符串比较和编辑距离算法库(`Levenshtein、LCS、Hamming、Damerau levenshtein、Jaro-Winkler` 等)。
* [go-ef](https://github.com/amallia/go-ef) : `Elias-Fano`编码的`Go`实现。
* [go-geoindex](https://github.com/hailocab/go-geoindex) : 基于内存存储的地理索引
* [go-mcache](https://github.com/OrlovEvgeny/go-mcache) : 快速的内存`key:value`存储/缓存库。
* [go-rquad](https://github.com/aurelien-rainone/go-rquad) : 区域四叉树,支持有效点位置和领域发现
* [gocache](https://github.com/eko/gocache) : 完整的`Go`缓存库,支持多个存储(内存、`memcache、redis......`)。
* [goconcurrentqueue](https://github.com/enriquebris/goconcurrentqueue) : 并发`FIFO`队列。
* [gods](https://github.com/emirpasic/gods) :` Go `语言数据结构、容器、集合、列表、栈、键值对、 `BidiMaps`、树、`HashSet`等
* [gofal](https://github.com/xxjwxc/gofal) : `Go`的微分算法库。
* [golang-set](https://github.com/deckarep/golang-set) : 线程安全和非线程安全的高性能集合
* [goset](https://github.com/zoumo/goset) : ` Go `集合实现。
* [goskiplist](https://github.com/ryszard/goskiplist) : `Go`语言实现的跳跃表
* [gostl](https://github.com/liyue201/gostl) : 数据结构和算法库,旨在提供类似于` C++ STL` 的功能。
* [gota](https://github.com/kniren/gota) : 为go语言实现了数据帧,序列以及数据噪音的方法
* [goterator](https://github.com/yaa110/goterator) : 迭代器的实现,提供映射和减少功能。
* [hide](https://github.com/emvi/hide) :具有hash 函数功能,以防止向客户端发送敏感ID`。
* [hilbert](https://github.com/google/hilbert) : 用于映射空间填充曲线(例如希尔伯特曲线和皮亚诺曲线)和数值的库。
* [hyperloglog](https://github.com/axiomhq/hyperloglog) : `HyperLogLog` 的go语言实现
* [iter](https://github.com/disksing/iter) : `C++ STL`迭代器和算法的Go实现。
* [levenshtein](https://github.com/agext/levenshtein) : 编辑距离(`levenshtein distance`)和相似性度量计算库
* [levenshtein](https://github.com/agnivade/levenshtein) : 在Go中计算`levenshtein`距离的实现。
* [mafsa](https://github.com/smartystreets/mafsa) : Go 语言实现的 `MA-FSA` ,包含最小完美哈希实现
* [merkletree](https://github.com/cbergoon/merkletree) : 实现了梅克尔树,提供了一种高效、安全的数据结构内容验证方法
* [mspm](https://github.com/BlackRabbitt/mspm) : 用于信息检索的多字符串模式匹配算法。
* [nan](https://github.com/kak-tus/nan) : 在一个库中实现了零分配的`Nullable`结构,并提供了方便的转换函数。
* [null](https://github.com/emvi/null) : 可为`null`的`Go`类型,它们可以被`marshalled/unmarshalled到JSON。
* [parsefields](https://github.com/MonaxGT/parsefields) : - 用于解析`JSON`类日志的工具,用于收集特殊字段和特定事件。
* [pipeline](https://github.com/hyfather/pipeline) : 一个带有扇形输入和扇形输出的管道的实现。
* [ptrie](https://github.com/viant/ptrie) : 前缀树的实现
* [remember-go](https://github.com/rocketlaunchr/remember-go) : 用于缓存慢速数据库查询的通用接口(由`redis、memcached、ristretto`或内存支持)。
* [ring](https://github.com/TheTannerRyan/ring) : 高性能、线程安全的 `bloom `过滤器的 Go 实现。
* [roaring](https://github.com/RoaringBitmap/roaring) : 实现了压缩` bitsets `算法的Go语言库
* [set](https://github.com/StudioSol/set) : 在 `Go `中使用 `LinkedHashMap `实现简单的集合数据结构。
* [skiplist](https://github.com/MauriceGit/skiplist) : 非常快的`Go Skipipllist`实现。
* [skiplist](https://github.com/gansidui/skiplist) : 在 `Go `中实现的` Skiplist`。
* [slices](https://github.com/srfrog/slices) : `slice`操作函数
* [timedmap](https://github.com/zekroTJA/timedmap) : 具有过期键值对的`map`。
* [treap](https://github.com/perdata/treap) : 使用树堆的持久化快速有序`map`
* [trie](https://github.com/derekparker/trie) : `Go`语言实现的`Trie`树
* [ttlcache](https://github.com/ReneKroon/ttlcache) : 基于过期时间的内存字符串缓存接口。
* [typ](https://github.com/gurukami/typ) : 空类型安全的基础类型转换器和从复杂结构中取值的开发库。
* [willf/bloom](https://github.com/willf/bloom) : 实现了布隆过滤器的库
----
## 数据库
`go语言实现的数据库`
* [badger](https://github.com/dgraph-io/badger) : `Go`中的快速键值存储库。
* [bbolt](https://github.com/etcd-io/bbolt) : `Go`的嵌入式键值数据库。
* [bcache](https://github.com/iwanbk/bcache) : 最终一致的分布式内存缓存`Go`库。
* [BigCache](https://github.com/allegro/bigcache) : 为GB量级数据设计的高效键/值缓存
* [Bitcask](https://github.com/prologic/bitcask) : `Bitcask` 是一个用纯 Go 编写的可嵌入的、持久的、快速的键值(KV)数据库,由于采用了 `bitcask` 盘上布局(LSM+WAL),它具有可预测的读/写性能、低延迟和高吞吐量。
* [buntdb](https://github.com/tidwall/buntdb) : 快速,可嵌入的,内存键值数据库,可定义索引及 `spatial`
* [cache](https://github.com/akyoto/cache) : 内存中的`key:value`存储,有过期时间,0依赖,<100 LoC,100%覆盖。
* [cache2go](https://github.com/muesli/cache2go) : 基于内存存储的键值缓存,支持自动基于超时的自动失效
* [clusteredBigCache](https://github.com/oaStuff/clusteredBigCache) : `BigCache`支持集群和单个项目过期。
* [cockroach](https://github.com/cockroachdb/cockroach) : 可扩展的、一致的事务型数据库
* [Coffer](https://github.com/claygod/coffer) : 简单的`ACID`键值数据库,支持事务。
* [couchcache](https://github.com/codingsince1985/couchcache) : `RESTful` 缓存微服务,基于`Couchbase`数据库
* [CovenantSQL](https://github.com/CovenantSQL/CovenantSQL) : `CovenantSQL`是一个区块链上的SQL数据库。
* [Databunker](https://github.com/paranoidguy/databunker) : 为符合`GDPR`和`CCPA`而构建的个人身份信息`PII`存储服务。
* [dgraph](https://github.com/dgraph-io/dgraph) : 可扩展的、分布式的、低延时、高吞吐的图数据库
* [diskv](https://github.com/peterbourgon/diskv) : 具有 `disk-backed` 功能的持久化键值存储
* [eliasdb](https://github.com/krotik/eliasdb) : 无依赖、事物型图数据库,支持 `REST API`、短语搜索以及类` SQL` 的查询语言
* [fastcache](https://github.com/VictoriaMetrics/fastcache) : 针对大量条目的快速线程安全内存缓存。将`GC`开销降到最低。
* [GCache](https://github.com/bluele/gcache) : 支持缓存过期、 `LFU、 LRU `和 `ARC `的缓存库
* [go-cache](https://github.com/pmylund/go-cache) : 基于内存存储的缓存,适用于分布式部署的应用
* [goleveldb](https://github.com/syndtr/goleveldb) : `Go`中[LevelDB](https://github.com/google/leveldb)键/值数据库的实现
* [groupcache](https://github.com/golang/groupcache) : ` Groupcache `是一个缓存及缓存填充库,在很多情况下用于替代 `memcached`.
* [immudb](https://github.com/codenotary/immudb) : `immudb `是一个轻量级、高速的不可变数据库,适用于用` Go `编写的系统和应用程序。
* [influxdb](https://github.com/influxdb/influxdb) : 用于度量、事件和实时分析的可扩展数据存储。
* [Kivik](https://github.com/go-kivik/kivik) : `Kivik`为`CouchDB、PouchDB`和类似的数据库提供了一个通用的`Go`和`GopherJS`客户端库。
* [ledisdb](https://github.com/siddontang/ledisdb) : `Ledisdb `是一个高性能 `NoSQL` 数据库,类似 `Redis`
* [levigo](https://github.com/jmhodges/levigo) : ` LeviGo `是 `LevelDB`的 `Go `语言封装
* [moss](https://github.com/couchbase/moss) : ` Moss` 是一个简单的 `LSM `键值存储引擎,100% Go 语言实现
* [nutsdb](https://github.com/xujiajun/nutsdb) : `Nutsdb`是一个用纯`Go`编写的简单、快速、可嵌入、持久化的键/值存储。它支持完全可序列化的事务和许多数据结构,如列表、集合、排序集合。
* [piladb](https://github.com/fern4lvarez/piladb) : 轻量级 `RESTful` 数据库引擎,基于堆栈结构
* [pogreb](https://github.com/akrylysov/pogreb) : 嵌入式键值存储,适用于重读工作负载。
* [prometheus](https://github.com/prometheus/prometheus) : 监控系统及时间序列数据库
* [pudge](https://github.com/recoilme/pudge) : 使用 `Go` 的标准库编写的快速、简单的键值存储。
* [rosedb](https://github.com/roseduan/rosedb) : 一个基于 LSM+WAL 的内嵌 k-v数据库,支持多种数据结构,如字符串、列表、哈希表、集合、有序集合
* [rqlite](https://github.com/rqlite/rqlite) : 基于 `SQLite `的轻量级的、分布式的关系型数据库
* [Scribble](https://github.com/nanobox-io/golang-scribble) : 小巧的 `JSON` 文件存储
* [slowpoke](https://github.com/recoilme/slowpoke) : 具有持久性的键值存储。
* [tempdb](https://github.com/rafaeljesus/tempdb) : 临时数据的键值对存储
* [tidb](https://github.com/pingcap/tidb) : ` TiDB` 是一个分布式的` SQL` 数据库。受到了` Google F1`的启发
* [tiedot](https://github.com/HouzuoGuo/tiedot) : 基于` Go `语言的` NoSQ`L 数据库
* [unitdb](https://github.com/unit-io/unitdb) : 用于物联网、实时消息应用的快速时序数据库。
* [Vasto](https://github.com/chrislusf/vasto) : 一个分布式高性能键值存储。在磁盘上。最终一致。HA。能够在不中断服务的情况下增长或收缩。
* [VictoriaMetrics](https://github.com/VictoriaMetrics/VictoriaMetrics) : 快速、资源高效、可扩展的开源时间序列数据库。可作为`Prometheus`的长期远程存储。支持`PromQL`。
#### 数据库迁移工具
* [avro](https://github.com/khezen/avro) : 发现`SQL`模式并将其转换为`AVRO`模式。查询`SQL`记录到`AVRO`字节。
* [darwin](https://github.com/GuiaBolso/darwin) : 数据库模式增量库
* [go-fixtures](https://github.com/RichardKnop/go-fixtures) : 类似` DjanGo fixtures`,用于 Golang 的內建`dababase/sql` 库
* [go-pg-migrations](https://github.com/robinjoseph08/go-pg-migrations) : 帮助使用 `go-pg/pg `编写迁移的` Go` 包。
* [gondolier](https://github.com/emvi/gondolier) : 使用`struct`装饰器的数据库迁移库。
* [goose](https://github.com/pressly/goose) : 数据库迁移工具。你可以通过编写增量 `SQL `或 `Go` 语言脚本来管理你的数据库
* [gormigrate](https://github.com/go-gormigrate/gormigrate) : 数据库模式迁移帮助工具,用于` Gorm ORM.`
* [migrate](https://github.com/golang-migrate/migrate) : 数据库迁移。命令行及 `Go `语言库
* [migrator](https://github.com/lopezator/migrator) : 简单的`Go`数据库迁移库。
* [pravasan](https://github.com/pravasan/pravasan) : 简单的迁移工具,目前支持 `MySQL `但是近期打算支持` Postgres, SQLite, MonGoDB` 等等
* [schema](https://github.com/adlio/schema) : 在你的Go二进制文件中嵌入数据库/sql兼容数据库的模式迁移库。
* [skeema](https://github.com/skeema/skeema) : `MySQL`的纯SQL模式管理系统,支持`sharding`和外部在线模式变更工具
* [soda](https://github.com/gobuffalo/pop/tree/master/soda) : 数据库迁移、创建、 ORM等等,用于` MySQL, PostgreSQL, `以及 `SQLite`.
* [sql-migrate](https://github.com/rubenv/sql-migrate) : 数据库迁移工具,允许利用 `Go-bindata` 将数据库迁移嵌入应用程序
### 数据库工具
* [bucket](https://github.com/PumpkinSeed/bucket) : 为`Couchbase`优化的数据结构框架,专门针对`bucket`的使用进行了优化。
* [chproxy](https://github.com/Vertamedia/chproxy) : ` HTTP`代理的`ClickHouse`数据库。
* [clickhouse-bulk](https://github.com/nikepan/clickhouse-bulk) : 收集小的插入请求后一并发送大的请求到`ClickHouse`服务器。
* [datagen](https://github.com/codingconcepts/datagen) : 快速的数据生成器,支持多表并支持多行`DML`
* [dbbench](https://github.com/sj14/dbbench) : 数据库基准测试工具,支持多个数据库和脚本。
* [go-mysql](https://github.com/siddontang/go-mysql) : 用于处理` MySQL` 协议及复制的` Go `语言工具集
* [go-mysql-elasticsearch](https://github.com/siddontang/go-mysql-elasticsearch) : 将你的 `MySQL` 数据自动同步到` Elasticsearch`
* [kingshard](https://github.com/flike/kingshard) : ` kingshard `是一个`Go`语言编写的高性能 `MySQL `数据库代理
* [myreplication](https://github.com/2tvenom/myreplication) : ` MySql` 二进制 `log` 复制监听器,支持基于语句和基于行的复制
* [octillery](https://github.com/knocknote/octillery) : 用于`sharding`数据库的`Go`包(支持所有ORM或原始SQL)。
* [orchestrator](https://github.com/github/orchestrator) : ` MySQL`复制拓扑管理器及可视化工具
* [pg_timetable](https://github.com/cybertec-postgresql/pg_timetable) : `PostgreSQL` 的高级调度。
* [pgweb](https://github.com/sosedoff/pgweb) : 基于 `Web` 的 `PostgreSQL` 数据库浏览工具
* [prep](https://github.com/hexdigest/prep) : 无需更改代码使用已准备好的` SQL` 语句的库
* [pREST](https://github.com/nuveo/prest) : 为 `PostgreSQL `数据库提供 `RESTful API`
* [rwdb](https://github.com/andizzle/rwdb) : `rwdb`为多个数据库服务器的设置提供读取复制功能。
* [vitess](https://github.com/youtube/vitess) : `vitess` 提供了能够使大型 `web `服务 `MySQL` 数据库的扩展变得更加容易的服务器及工具
### SQL 查询语句构建库
* [buildsqlx](https://github.com/arthurkushman/buildsqlx) : 针对`PostgreSQL`的`Go`数据库查询构建库。
* [dbq](https://github.com/rocketlaunchr/dbq) : `Go`的数据库操作库。
* [Dotsql](https://github.com/gchaincl/dotsql) : `Go`语言库,帮助你将 `sql` 文件保存在一个地方并且方便的取用
* [gendry](https://github.com/didi/gendry) : 非侵入式`SQL`构建器和强大的数据绑定器。
* [godbal](https://github.com/xujiajun/godbal) : Go的数据库抽象层(`dbal`)。支持`SQL`构建器,并能轻松获得数据库结果。
* [goqu](https://github.com/doug-martin/goqu) : 地道的 `SQL` 语句创建器和查询库
* [gosql](https://github.com/twharmon/gosql) : 具有更好的空值支持的SQL查询生成器。
* [igor](https://github.com/galeone/igor) : `PostgreSQL` 的抽象层,支持高级功能以及类` Gorm` 的语法
* [jet](https://github.com/go-jet/jet) : 在` Go `中编写类型安全的` SQL `查询框架,能够轻松地将数据库查询结果转换为所需的任意对象结构。
* [mpath](https://github.com/spacetab-io/mpath-go) : 用于 `SQL `记录的` MPTT (Modified Preorder Tree Traversal)` 包 - 实物化路径的实现
* [ormlite](https://github.com/pupizoid/ormlite) : 轻量级软件包,包含一些类似于`ORM`的功能,以及针对`sqlite`数据库的帮助程序。
* [ozzo-dbx](https://github.com/go-ozzo/ozzo-dbx) : 强大的数据检索方法以及与`DB`无关的查询构建能力。
* [qry](https://github.com/HnH/qry) : 从带有原始`SQL`查询的文件中生成常量的工具。
* [sq](https://github.com/bokwoon95/go-structured-query) : 适用于`Go`的类型安全`SQL`构建器和结构映射器。
* [sqlf](https://github.com/leporo/sqlf) : 快速的`SQL`查询构建器。
* [sqlingo](https://github.com/lqs/sqlingo) : 在` Go` 中构建 `SQL` 的轻量级 `DSL`。
* [sqrl](https://github.com/elgris/sqrl) : `SQL `查询创建器,是 `Squirrel` 的一个分叉版本,进行了性能方面的优化
* [Squalus](https://gitlab.com/qosenergy/squalus) : ` Go SQL`包的薄层,使其更容易执行查询。
* [Squirrel](https://github.com/Masterminds/squirrel) : 一个帮助你构建 `SQL` 查询的库
* [xo](https://github.com/knq/xo) : 基于已知的数据库表或自定义查询生成地道的` Go `语言代码,支持 `PostgreSQL, MySQL, SQLite, Oracle`, 以及 `Microsoft SQL Server`.
----
## 数据库驱动
`连接和操作数据库工具`
* 关系型数据库
* [avatica](https://github.com/apache/calcite-avatica-go)`Apache Phoenix/Avatica SQL `驱动
* [bgc](https://github.com/viant/bgc) : 数据库连接工具包,用于通过 `Go `语言访问` BigQuery`
* [firebirdsql](https://github.com/nakagami/firebirdsql) : `Firebird RDBMS SQL `驱动
* [go-adodb](https://github.com/mattn/go-adodb) : `Microsoft ActiveX `对象数据库驱动
* [go-mssqldb](https://github.com/denisenkom/go-mssqldb) : 适用于Go的`Microsoft MSSQL`驱动。
* [go-oci8](https://github.com/mattn/go-oci8) : ` Oracle `驱动
* [go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) : Go 语言 `MySQL`驱动
* [go-sqlite3](https://github.com/mattn/go-sqlite3) : Go 语言的 `SQLite3 `驱动
* [gofreetds](https://github.com/minus5/gofreetds) : `Microsoft MSSQL `驱动。 `FreeTDS`的go语言封装
* [FreeTDS](http://www.freetds.org) : `Microsoft MSSQL`驱动。是FreeTDS的Go封装器。
* [goracle](https://github.com/go-goracle/goracle) : 用于 `Go `的 `Oracle `驱动程序,使用 `ODPI-C` 驱动程序。
* [pgx](https://github.com/jackc/pgx) : `PostgreSQL` 驱动,支持比 `database/sql `更多的特性
* [pq](https://github.com/lib/pq) : 用于`database/sql`的`Pure Go Postgres`驱动。
* [Sqinn-Go](https://github.com/cvilsmeier/sqinn-go) : 纯Go的`SQLite`驱动。
----
* NoSQL数据库
* [aerospike-client-go](https://github.com/aerospike/aerospike-client-go) : `Go`语言的`Aerospike`客户端。
* [arangolite](https://github.com/solher/arangolite) : `ArangoDB`的轻量级`golang`驱动
* [asc](https://github.com/viant/asc) : 用于`Aerospike for go`的数据存储连接。
* [dynago](https://github.com/underarmour/dynago) : `Dynago` 是 `DynamoDB` 的客户端。
* [forestdb](https://github.com/couchbase/goforestdb) : `ForestDB`的`Go`语言封装
* [go-couchbase](https://github.com/couchbase/go-couchbase) :` Go `语言` Couchbase `客户端
* [go-pilosa](https://github.com/pilosa/go-pilosa) : 用于Pilosa的Go客户端库。
* [go-rejson](https://github.com/nitishm/go-rejson) : `Redislabs` 的 `ReJSON `模块的 `Golang` 客户端,使用 `Redigo golang `客户端。在`redis`中轻松地将结构体作为`JSON`对象进行存储和操作。
* [gocb](https://github.com/couchbase/gocb) : `Couchbase Go`官方SDK。
* [gocql](http://gocql.github.io) : `Apache Cassandra` 的 Go 语言驱动
* [godis](https://github.com/piaohao/godis) : 由 `golang` 实现的` redis` 客户端,灵感来自 `jedis`。
* [godscache](https://github.com/defcronyke/godscache) : `Google Cloud Platform Go Datastore`包的封装器,使用memcached增加缓存。
* [gomemcache](https://github.com/bradfitz/gomemcache/) : `Go`编程语言的`memcache`客户端库。
* [gorethink](https://github.com/dancannon/gorethink) : `RethinkDB`的Go语言驱动。
* [goriak](https://github.com/zegl/goriak) : `Riak KV` 的 `Go `语言驱动
* [mgm](https://github.com/kamva/mgm) : 用于 `Go` 的基于` MongoDB` 模型的` ODM`(基于官方 MongoDB 驱动程序)
* [mgo](https://github.com/globalsign/mgo) :` MonGoDB` 驱动,通过简单的 `API` 现了丰富的、经过测试的特性,这些 API 遵循 Go 语言的习惯
* [mongo-go-driver](https://github.com/mongodb/mongo-go-driver) : `Go`语言的官方`MongoDB`驱动。
* [neo4j](https://github.com/cihangir/neo4j) : ` Neo4j Rest API `的 `Go` 语言接口
* [Neo4j-GO](https://github.com/davemeehan/Neo4j-GO) : ` Go` 语言实现的 `Neo4j REST `客户端
* [neoism](https://github.com/jmcvetta/neoism) : `Go` 语言 `Neo4j` 客户端
* [qmgo](https://github.com/qiniu/qmgo) : Go的`MongoDB`驱动。它基于官方的`MongoDB`驱动,但和Mgo一样更容易使用。
* [redeo](https://github.com/bsm/redeo) : `Redigo`是`Redis`数据库的Go客户端。
* [redigo](https://github.com/gomodule/redigo) : ` RediGo `是 `Redis` 数据库的`Go` 语言客户端.
* [redis](https://github.com/go-redis/redis) : 兼容R`edis`协议的 `TCP` 服务器/服务.
* [xredis](https://github.com/shomali11/xredis) : 类型安全的、可定制的、简洁易用的 `Redis` 客户端
----
* 搜索引擎和文本数据库
* [bleve](https://github.com/blevesearch/bleve) : 现代文本索引库
* [elastic](https://github.com/olivere/elastic) : ` Go` 语言的 `Elasticsearch `客户端
* [elasticsql](https://github.com/cch123/elasticsql)将` sql` 转换为 `elasticsearch dsl `
* [elastigo](https://github.com/mattbaird/elastigo) : ` Elasticsearch `客户端库
* [go-elasticsearch](https://github.com/elastic/go-elasticsearch) : Go的官方`Elasticsearch`客户端。
* [goes](https://github.com/OwnLocal/goes) : 用于和 `Elasticsearch` 交互的库
* [riot](https://github.com/go-ego/riot) : `Go`开源,分布式,简单高效的搜索引擎。
* [skizze](https://github.com/seiflotfy/skizze) : 概率数据结构服务和存储。
* 多个后端:
* [cachego](https://github.com/fabiorphp/cachego) : `Golang Cache`组件,支持多个驱动。
* [cayley](https://github.com/google/cayley) : 支持多个后端的图形数据库。
* [dsc](https://github.com/viant/dsc) : ` SQL、NoSQL`、结构化文件的数据存储连接。
* [gokv](https://github.com/philippgille/gokv) : 为`go(Redis、Consul、etcd、bbolt、BadgerDB、LevelDB、Memcached、DynamoDB、S3、PostgreSQL、MongoDB、CockroachDB`等)提供简单的键值存储抽象和实现。
----
## 日期和时间
`用于处理日期和时间的库`
* [carbon](https://github.com/uniplaces/carbon) : 简单的时间扩展程序,有很多有用的方法,是` PHP Carbon `库的接口
* [cronrange](https://github.com/1set/cronrange) : 解析`Cron`风格的时间范围表达式,检查给定时间是否在任何范围内。
* [date](https://github.com/rickb777/date) : 增强了Time的功能,用于处理日期、日期范围、时间跨度、时间段和日期时间。
* [dateparse](https://github.com/araddon/dateparse) : 在不知道格式的情况下解析日期。
* [durafmt](https://github.com/hako/durafmt) : 持续时间格式化
* [feiertage](https://github.com/wlbr/feiertage) : 一组计算德国公共假期的函数,比如复活节、感恩节等
* [go-persian-calendar](https://github.com/yaa110/go-persian-calendar) : - 太阳历
* [go-str2duration](https://github.com/xhit/go-str2duration) : 将字符串转换为持续时间。支持`time.Duration`返回字符串等。
* [go-sunrise](https://github.com/nathan-osman/go-sunrise) : 计算指定地点的日出和日落时间。
* [go-week](https://github.com/stoewer/go-week) : 处理星期的库
* [iso8601](https://github.com/relvacode/iso8601) : 有效地解析`ISO8601`日期时间,而无需使用`regex`。
* [kair](https://github.com/GuilhermeCaruso/kair) : 日期和时间 - `Golang `格式化库。
* [now](https://github.com/jinzhu/now) : `Now` 是一个 `Go` 语言的时间工具集
* [NullTime](https://github.com/kirillDanshin/nulltime) : -时间可以是 `NULL` 的库
* [strftime](https://github.com/awoodbeck/strftime) : `C99`兼容的`strftime`格式化器。
* [timespan](https://github.com/SaidinWoT/timespan) : 用于与时间间隔交互,定义为开始时间和持续时间
* [timeutil](https://github.com/leekchan/timeutil) : 为 `Go` 语言时间包扩展了有用的功能,例如时间间隔和格式化
* [tuesday](https://github.com/osteele/tuesday) : `Ruby`兼容的`Strftime`函数。
----
## 分布式系统
* [arpc](https://github.com/lesismal/arpc) : 更有效的网络通信,支持双向呼叫、通知、广播。
* [celeriac](https://github.com/svcavallar/celeriac.v1) : 利用 `Go` 语言对`Celery`的` worker`ß任务事件进行交互和监控的库
* [consistent](https://github.com/buraksezer/consistent) : 有限负载的一致哈希算法库。
* [consistenthash](https://github.com/mbrostami/consistenthash) : 使用可配置的副本实现一致的哈希。
* [dht](https://github.com/anacrolix/dht) : ` BitTorrent Kademlia DHT `的实现。
* [digota](https://github.com/digota/digota) grpc电子商务微服务。
* [dot](https://github.com/dotchain/dot/) : 使用操作转换/OT的分布式同步库。
* [doublejump](https://github.com/edwingeng/doublejump) : 改版后的`Google`的跳转一致哈希。
* [dragonboat](https://github.com/lni/dragonboat) : `Go`中一个功能完整且高性能的多组`Raft`库。
* [drmaa](https://github.com/dgruber/drmaa) : 集群调度工具的任务提交库,基于标准 `DRMAA`
* [dynamolock](https://cirello.io/dynamolock) : `DynamoDB`支持的分布式锁的实现。
* [dynatomic](https://github.com/tylfin/dynatomic) : 将 `DynamoDB` 作为原子计数器使用的库。
* [emitter-io](https://github.com/emitter-io/emitter) : 使用` MQTT、Websockets` 和 `love` 构建的高性能、分布式、安全和低延迟的发布-订阅平台。
* [flowgraph](https://github.com/vectaport/flowgraph) : 基于流的编程包实现的MPI 风格的读取,发送协同层;
* [gleam](https://github.com/chrislusf/gleam) : 快速、可扩展的分布式` map/reduce` 系统,使用纯` Go` 语言和` Luajit` 编写,融合了 Go 语言的高并发能力和 Luajit 的高性能,可以独立或分布式部署运行。
* [glow](https://github.com/chrislusf/glow) : 易于使用的可扩展的分布式大数据处理、`Map-Reduce、DAG`执行,全部用纯Go编写。
* [gmsec](https://github.com/gmsec/micro) : Go分布式系统开发框架。
* [go-health](https://github.com/InVisionApp/go-health) : 用于在服务中启用异步依赖性健康检查的库。
* [go-jump](https://github.com/dgryski/go-jump) : `Google "Jump" `一致性哈希函数的接口
* [go-kit](https://github.com/go-kit/kit) : 为服务工具吧,支持服务发现、负载均衡 、可插拔传输以及请求追踪等
* [go-micro](https://github.com/micro/go-micro) : 一个分布式系统开发框架。
* [go-mysql-lock](https://github.com/sanketplus/go-mysql-lock) : 基于`MySQL`的分布式锁。
* [go-pdu](https://github.com/pdupub/go-pdu) : 基于身份的去中心化社交网络。
* [go-sundheit](https://github.com/AppsFlyer/go-sundheit) : 为 `golang `服务定义异步服务健康检查提供支持的库。
* [gorpc](https://github.com/valyala/gorpc) : 简单、快速、可扩展的`RPC` 库,针对高负载场景
* [grpc-go](https://github.com/grpc/grpc-go) : ` gRPC`的Go语言实现。基于`HTTP/2的RPC`。
* [hprose](https://github.com/hprose/hprose-golang) : 非常新颖的RPC库,现在支持25种以上的语言。
* [jsonrpc](https://github.com/osamingo/jsonrpc) : `jsonrpc` 包实现了 `JSON-RPC 2.0`.
* [jsonrpc](https://github.com/ybbus/jsonrpc) : `JSON-RPC 2.0 HTTP `客户端实现
* [KrakenD](https://github.com/devopsfaith/krakend) : 带有中间件的,高性能` API `网关框架
* [liftbridge](https://github.com/liftbridge-io/liftbridge) : 用于`NATS`的轻量级、容错消息流。
* [micro](https://github.com/micro/micro) : 面向云计算及其他领域的分布式系统运行时。
* [NATS](https://github.com/nats-io/gnatsd) : 轻量级、高性能微服务系统,用于微服务、物联网以及云
* [outboxer](https://github.com/italolelis/outboxer) : ` Outboxer`是一个实现`outbox`模式的`go`库。
* [pglock](https://cirello.io/pglock) : `PostgreSQL`支持的分布式锁的实现。
* [raft](https://github.com/hashicorp/raft) : `Raft` 共识协议的 `Golang `实现,由 `HashiCorp`.开发。
* [raft](https://github.com/coreos/etcd/tree/master/raft) : ` Raft `共识协议的 `Go` 实现,由 `CoreOS` 提供。
* [rain](https://github.com/cenkalti/rain) : `BitTorrent`客户端和库。
* [redis-lock](https://github.com/bsm/redislock) : 使用Redis实现的简化的分布式锁。
* [resgate](https://resgate.io/) : 用于构建 `REST`、实时和 `RPC API` 的实时 `API` 网关,所有客户端都可以无缝同步
* [ringpop-go](https://github.com/uber/ringpop-go) : 为`Go`应用提供可扩展、容错的应用层分片。
* [rpcx](https://github.com/smallnest/rpcx) : `rpcx`是一个类似阿里巴巴` Dubbo` 和微博` Motan` 的分布式的` RPC `服务框架
* [Semaphore](https://github.com/jexia/semaphore) : 直接的(微)服务协调器。
* [sleuth](https://github.com/ursiform/sleuth) : 在 `HTTP `服务之间进行无主` p2p` 自动发现和 RPC通信(使用 [ZeroMQ](https://github.com/zeromq/libzmq))ß
* [tendermint](https://github.com/tendermint/tendermint) : 使用`Tendermint` 一致性及区块链协议的高性能的中间件,用于将任何语言编写的状态机转换为一个拜占庭容错状态机,
* [torrent](https://github.com/anacrolix/torrent) : `BitTorrent` 客户端
----
## 动态DNS
`更新动态dns记录的库和工具`
* [DDNS](https://github.com/skibish/ddns) : 以`digital ocean `DNS为后台的个人DDNS客户端。
* [dyndns](https://gitlab.com/alcastle/dyndns) : 后台`Go`进程,定期自动检查您的IP地址,并在您的地址发生变化时更新(一个或多个)谷歌域名的动态DNS记录。
* [GoDNS](https://github.com/timothyye/godns) : 用Go编写的动态`DNS`客户端工具,支持`DNSPod`和`HE.net`。
----
## 邮件库
`邮件管理和发送的go语言库`
* [chasquid](https://blitiri.com.ar/p/chasquid) : 用Go编写的SMTP服务器。
* [douceur](https://github.com/aymerick/douceur) : `HTML` 邮件中的内联 `CSS` 库
* [email](https://github.com/jordan-wright/email) : 健壮的、灵活的 `email `库
* [go-dkim](https://github.com/toorop/go-dkim) : `DKIM` 库,用于对 `email` 进行签名和验证
* [go-imap](https://github.com/emersion/go-imap) : ` IMAP` 库,用于客户端和服务器
* [go-message](https://github.com/emersion/go-message) : 用于互联网消息格式和邮件的库
* [go-premailer](https://github.com/vanng822/go-premailer) : 在`Go`中为`HTML`邮件提供在线样式。
* [go-simple-mail](https://github.com/xhit/go-simple-mail) : `go`语言实现的基于简单`smtp`协议的邮件发送库
* [Hectane](https://github.com/hectane/hectane) : 轻量级 `SMTP `客户端,提供 `HTTP API`
* [hermes](https://github.com/matcornic/hermes) : 一个用于生成干净、响应式 `HTML e-mail` 的包
* [mailchain](https://github.com/mailchain/mailchain) : 用`go`写的用于发送加密邮件到区块链地址的邮件库
* [mailgun-go](https://github.com/mailgun/mailgun-go) : 使用`Mailgun API`发送邮件的Go库。
* [MailHog](https://github.com/mailhog/MailHog) : `Email` 及 `SMTP` 测试工具,具有 web 及 API 接口
* [SendGrid](https://github.com/sendgrid/sendgrid-go) : ` SendGrid `的 Go 语言库,用于发送电子邮件
* [smtp](https://github.com/mailhog/smtp) : `SMTP` 服务器协议状态机
----
## 脚本语言与嵌入式编程
`在你的go代码中嵌入其他脚本语言`
* [anko](https://github.com/mattn/anko) : `Go `语言编写的解释器
* [binder](https://github.com/alexeyco/binder) : 基于[gopher-lua](https://github.com/yuin/gopher-lua)的go语言Lua 接口,
* [cel-go](https://github.com/google/cel-go) : 快速、可移植、非图灵完全表达式评估和渐进分型。
* [expr](https://github.com/antonmedv/expr) : ` Go` 的表达式评估引擎,具有快速、非图灵完备、动态类型化、静态类型化的特性。
* [gentee](https://github.com/gentee/gentee) : 可嵌入脚本编程语言。
* [gisp](https://github.com/jcla1/gisp) : `Go`中的简单`LISP`。
* [go-duktape](https://github.com/olebedev/go-duktape) : ` Go`的`Duktape JavaScript`引擎封装。
* [go-lua](https://github.com/Shopify/go-lua) : ` Lua 5.2 `虚拟机的纯 Go 语言接口
* [go-php](https://github.com/deuill/go-php) : `PHP` 的` Go` 语言接口
* [go-python](https://github.com/sbinet/go-python) : `CPython C-API` 的` Go` 语言接口
* [goja](https://github.com/dop251/goja) : 在 Go 中实现 `ECMAScript 5.1(+)` 。
* [golua](https://github.com/aarzilli/golua) : `lua C API`的 `Go `语言接口。
* [gopher-lua](https://github.com/yuin/gopher-lua) : ` Go` 语言编写的 `Lua 5.1` 虚拟机和编译器
* [gval](https://github.com/PaesslerAG/gval) : Go编写的高度可定制的表达式语言。
* [ngaro](https://github.com/db47h/ngaro) : 可嵌入的Ngaro虚拟机实现,可在`Retro`中编写脚本。
* [purl](https://github.com/ian-kent/purl) : 嵌入 `Go` 语言的 `Perl 5.18.2`
* [tengo](https://github.com/d5/tengo) : ` Go `的字节码编译脚本语言。
----
## 错误处理
`go 语言错误处理库`
* [emperror](https://github.com/emperror/emperror) : ` Go`库和应用程序的错误处理工具和最佳实践。
* [eris](https://github.com/rotisserie/eris) : 在`Go`中处理、跟踪和记录错误的更好方法。与标准错误库和` github.com/pkg/errors `兼容。
* [errlog](https://github.com/snwfdhmp/errlog) : 用于确定错误的责任源代码(以及其他一些快速调试功能,可以嵌入到任何的日志服务中。
* [errors](https://github.com/emperror/errors) : 标准库错误包和` github.com/pkg/errors` 的替代包。提供各种错误处理单元。
* [errors](https://github.com/pkg/errors) : 提供简单错误处理单元的包。
* [errors](https://github.com/neuronlabs/errors) : 简单的 `golang `错误处理包。
* [errors](https://github.com/PumpkinSeed/errors) : 最简单的错误封装器,性能卓越,内存开销最小。
* [errors](https://github.com/bnkamalesh/errors) : 最小的错误处理包,具有自定义错误类型等特性
* [errorx](https://github.com/joomcode/errorx) : 功能丰富的错误处理包,包括堆栈信息获取、错误组成分析等
* [Falcon](https://github.com/SonicRoshan/falcon) : 简单但功能强大的错误处理包。
* [go-multierror](https://github.com/hashicorp/go-multierror) : 用于将错误列表表示为单个错误的包
* [tracerr](https://github.com/ztrue/tracerr) : 带有堆栈跟踪和源片段的`Golang`错误处理包。
----
## 文件处理
`处理文件和文件系统操作的库`
* [afero](https://github.com/spf13/afero) : ` go`语言编写的对文件系统进行抽象的系统框架
* [afs](https://github.com/viant/afs) : 适用于 `Go` 的抽象文件存储。
* [baraka](https://github.com/xis/baraka) : 用于轻松处理 `http `文件上传的库。
* [bigfile](https://github.com/bigfile/bigfile) : 文件传输系统,支持用`http api、rpc`调用和`ftp`客户端管理文件。
* [checksum](https://github.com/codingsince1985/checksum) : 计算大文件的信息摘要,如`MD5`和`SHA256`。
* [copy](https://github.com/otiai10/copy) : 递归复制目录。
* [flop](https://github.com/homedepot/flop) : 文件操作库,目的是与 [GNU cp](https://www.gnu.org/software/coreutils/manual/html_node/cp-invocation.html)进行镜像。
* [go-csv-tag](https://github.com/artonge/go-csv-tag) : 使用 `tag` 导入 `csv`
* [go-decent-copy](https://github.com/hugocarreira/go-decent-copy) : 文件复制功能库。
* [go-exiftool](https://github.com/barasher/go-exiftool) : 为`ExifTool`提供绑定服务,`ExifTool`是一个著名的库,用于从文件(图片、PDF、office...)中提取尽可能多的元数据
* [go-gtfs](https://github.com/artonge/go-gtfs) : 用`go`加载`gtfs`文件
* [gut/yos](https://github.com/1set/gut) : 简单可靠的文件操作包,支持对文件、目录和符号链接的`copy/move/diff/list`。
* [notify](https://github.com/rjeczalik/notify) : 类似 `os/signal`的文件系统提示库,具有简单的 API.
* [opc](https://github.com/qmuntal/opc) : 为` Go `加载` Open Packaging Conventions (OPC) `文件
* [parquet](https://github.com/parsyl/parquet) : 读取和写入[parquet](https://parquet.apache.org) 文件。
* [pdfcpu](https://github.com/pdfcpu/pdfcpu) : PDF 处理器。
* [skywalker](https://github.com/dixonwille/skywalker) : 允许你简单方便的并发浏览文件系统
* [stl](https://gitlab.com/russoj88/stl) : 读取和写入`STL`文件的模块,采取并发的读取算法。
* [tarfs](https://github.com/posener/tarfs) : 为 `tar` 文件实现的文件系统接口
* [todotxt](https://github.com/1set/todotxt)` todo.txt`文件的go语言解析器。
* [vfs](https://github.com/C2FO/vfs) : 适用于 `Go` 的多个文件系统类型,如 `os、S3 `和 `GCS`的可插拔、可扩展的文件系统功能库。
----
## 金融领域相关库
`处理货币与金融领域的库`
* [accounting](https://github.com/leekchan/accounting) : `Go`语言金钱及货币格式
* [currency](https://github.com/bojanz/currency) : 处理货币金额,提供货币信息和格式。
* [currency](https://github.com/bnkamalesh/currency) : 高性能、精确的货币计算包。
* [decimal](https://github.com/shopspring/decimal) : 支持任意精度的十进制数的go包
* [fastme](https://github.com/newity/fastme) : `Go`实现的 快速可扩展的匹配引擎 。
* [go-finance](https://github.com/FlashBoys/go-finance) : `Go`中的综合金融市场数据。
* [go-finance](https://github.com/alpeb/go-finance) : 用于货币时间价值(年金)、现金流、利率转换、债券和折旧计算的金融函数库。
* [go-finance](https://github.com/pieterclaerhout/go-finance) : 用于获取汇率、通过VIES查询增值税号和查询IBAN银行账号的模块。
* [go-finnhub](https://github.com/m1/go-finnhub) : 来自`finnhub.io`的股市、外汇和加密数据客户端。访问来自60多家证券交易所、10家外汇经纪商和15家以上加密交易所的实时金融市场数据。
* [go-money](https://github.com/rhymond/go-money) : `Fowler's Money`模式的实现。
* [ofxgo](https://github.com/aclindsa/ofxgo) : 查询 `OFX `服务器并解析其响应 (有一个示例的命令行客户端)
* [orderbook](https://github.com/i25959341/orderbook) : `Golang`中的限价订单簿的匹配引擎。
* [techan](https://github.com/sdcoffey/techan) : 具有高级市场分析和交易策略的技术分析库。
* [transaction](https://github.com/claygod/transaction) : 以多线程模式运行的嵌入式的账户交易数据库,。
* [vat](https://github.com/dannyvankooten/vat) : VAT 验证及欧洲增值税率工具
----
## 表单
`表单解析与绑定`
* [bind](https://github.com/robfig/bind) : 可以表单数据绑定到任意的` Go` 变量上
* [binding](https://github.com/mholt/binding) : 将来自` net/HTTP `请求的表单、`JSON` 数据绑定到结构体
* [conform](https://github.com/leebenson/conform) : 检查用户输入并基于结构标签来清理数据
* [form](https://github.com/go-playground/form) : 解码 `url `中的数据到 `Go` 语言变量中以及将 `Go `语言变量编码进 `url` 。
* [formam](https://github.com/monoculum/formam) : 将表单数据解码到结构体
* [forms](https://github.com/albrow/forms) : 框架无关的表单/JSON数据解析验证库,支持多部分表单及文件
* [gorilla/csrf](https://github.com/gorilla/csrf) : 为 `Go` 语言 `web` 应用提供 `CSRF` 防御
* [nosurf](https://github.com/justinas/nosurf) : `CSRF` 防御中间件
* [qs](https://github.com/sonh/qs) : 用于将结构体编码为 `URL` 查询参数的` Go` 模块
* [queryparam](https://github.com/tomwright/queryparam) : 将` url.Values `解码为标准或自定义类型的可用结构体值。
----
## 函数式编程
* [fpGo](https://github.com/TeaEntityLab/fpGo) : `Golang`中的单项式函数式编程功能
* [fuego](https://github.com/seborama/fuego) : `Go`中实验室的函数式编程。
* [go-underscore](https://github.com/tobyhede/go-underscore) : `Go`函数式集合工具。
----
## 游戏开发
* [Azul3D](https://github.com/azul3d/engine) : `Go `语言编写的 `3D` 游戏引擎
* [Ebiten](https://github.com/hajimehoshi/ebiten) : `Go` 语言编写的简单的 `2D` 游戏库
* [engo](https://github.com/EngoEngine/engo) : ` EnGo `是一个开源的` 2D `游戏引擎,遵循实体-组件-系统范式
* [g3n](https://github.com/g3n/engine) : `Go 3D`游戏引擎。
* [go-astar](https://github.com/beefsack/go-astar) : A*路径查找算法的Go实现。
* [go-sdl2](https://github.com/veandco/go-sdl2) : [Simple DirectMedia Layer](https://www.libsdl.org/) 的 `Go`封装。
* [go3d](https://github.com/ungerik/go3d) : 专注性能的 `2D/3D` 数学库
* [gonet](https://github.com/xtaci/gonet) : `Go `语言实现的游戏服务器框架
* [goworld](https://github.com/xiaonanln/goworld) : 可扩展的游戏服务器引擎。
* [Leaf](https://github.com/name5566/leaf) : 轻量级游戏服务器框架
* [nano](https://github.com/lonng/nano) : 基于`golang`的轻量级、设施、高性能的游戏服务器框架。
* [Oak](https://github.com/oakmound/oak) : `go`游戏引擎。
* [Pitaya](https://github.com/topfreegames/pitaya) : 可扩展的游戏服务器框架,支持集群,并通过`C SDK`为`iOS、Android、Unity`等提供客户端库。
* [Pixel](https://github.com/faiface/pixel) :`2D` 游戏引擎库
* [prototype](https://github.com/gonutz/prototype) : 跨平台(`Windows/Linux/Mac`)库,可利用最小的API创建桌面游戏。
* [raylib-go](https://github.com/gen2brain/raylib-go) : raylib的 Go 语言接口,简单、易用的用于学习游戏编程的库
* [raylib](http://www.raylib.com/) : raylib的Go绑定,一个简单易用的电子游戏编程学习库。
* [termloop](https://github.com/JoelOtter/termloop) : 终端游戏引擎,基于 `Termbox`
* [tile](https://github.com/kelindar/tile) : 面向数据和缓存友好的 `2D` 网格库 (`TileMap`)。
----
## 代码生成与泛型
* [efaceconv](https://github.com/t0pep0/efaceconv) : 代码生成工具,用于高效的将 `interface{} `转换为不可变类型,并且不需要进行任何内存分配
* [gen](https://github.com/clipperhouse/gen) : 代码生成工具,用于提供类似泛型的功能
* [generis](https://github.com/senselogic/GENERIS) : 提供泛型、自由形式宏、条件编译和 `HTML` 模板化的代码生成工具。
* [go-enum](https://github.com/abice/go-enum) : 从代码注释中生成`enums`代码。
* [go-linq](https://github.com/ahmetalpbalkan/go-linq) : 类似`.NET LINQ`的`Go`查询方法。
* [go-xray](https://github.com/pieterclaerhout/go-xray) : 使反射的使用更加简单的助手。
* [goderive](https://github.com/awalterschulze/goderive) : 从输入类型导出函数。
* [gotype](https://github.com/wzshiming/gotype) : `Golang `源代码解析,用法类似于 `reflect` 包。
* [GoWrap](https://github.com/hexdigest/gowrap) : 使用简单的模板为 `Go `接口生成装饰器。
* [interfaces](https://github.com/rjeczalik/interfaces) : 命令行工具,用于生成接口定义
* [jennifer](https://github.com/dave/jennifer) : 不适用模板生成任意 `Go` 语言代码
* [pkgreflect](https://github.com/ungerik/pkgreflect) : 用于包作用域反射的 `Go `语言预处理器
* [typeregistry](https://github.com/xiaoxin01/typeregistry) : 用于动态创建类型的库。
----
## 位置信息与地理GEO处理库
* [geocache](https://github.com/melihmucuk/geocache) : 内存缓存,适用于基于地理位置的应用。
* [geoserver](https://github.com/hishamkaram/geoserver) : 用于通过`GeoServer REST API`操纵`GeoServer`实例的Go包。
* [gismanager](https://github.com/hishamkaram/gismanager) : 将你的GIS数据(矢量数据)发布到`PostGIS`和`Geoserver`的库。
* [mbtileserver](https://github.com/consbio/mbtileserver) : 简单的基于`Go`的服务器,用于存储`mbtiles`格式的地理信息。
* [osm](https://github.com/paulmach/osm) : 用于读取、写入和处理`OpenStreetMap`数据和API的库。
* [pbf](https://github.com/maguro/pbf) : ` OpenStreetMap PBF golang`编码器/解码器。
* [S2 geojson](https://github.com/pantrif/s2-geojson) : 将`geojson`转换为`S2`单元格,并在地图上演示一些`S2`几何特征。
* [S2 geometry](https://github.com/golang/geo) : `Go`中的`S2`几何库。
* [Tile38](https://github.com/tidwall/tile38) : 具有空间索引和实时地理围栏的地理位置数据库。
* [WGS84](https://github.com/wroge/wgs84) : 坐标转换和变换的库(`ETRS89, OSGB36, NAD83, RGF93, Web Mercator, UTM`)。
* [c4go](https://github.com/Konstantin8105/c4go) : 将` C `代码转换为`go`代码。
* [f4go](https://github.com/Konstantin8105/f4go) : 将` FORTRAN 77 `代码转为 `Go` 代码。
* [gopherjs](https://github.com/gopherjs/gopherjs) : 把` Go` 编译为` JavaScript.`
* [llgo](https://github.com/go-llvm/llgo) : 基于 `LLVM` 的` Go` 语言编译器
* [tardisgo](https://github.com/tardisgo/tardisgo) : G`olang`转换为 `Haxe` 进而转换为 `CPP/CSharp/Java/JavaScript `的编译器.
----
## Goroutines
`goroutines的管理和使用`
* [ants](https://github.com/panjf2000/ants) : 高性能和低消耗的`goroutine`池。
* [artifex](https://github.com/borderstech/artifex) : `Golang `的简单内存作业队列,使用基于`worker`的调度策略。
* [async](https://github.com/reugn/async) : `Go `的另一个同步库(`Future, Promise, Locks`)。
* [async](https://github.com/studiosol/async) : 安全的异步函数执行的方式,支持在出现pannic的情况下恢复它们。
* [breaker](https://github.com/kamilsk/breaker) : 采用了一种可以使执行流可中断的灵活的机制的包。
* [channelify](https://github.com/ddelizia/channelify) : 将你的函数转化为返回管道,以实现简单而强大的并行处理。
* [conexec](https://github.com/ITcathyh/conexec) : 一个并发工具包,帮助你以一种高效和安全的方式并发执行函数。它支持指定整体超时以避免阻塞,并使用goroutine池来提高效率。
* [cyclicbarrier](https://github.com/marusama/cyclicbarrier) : - `golang`的`CyclicBarrier`。
* [go-floc](https://github.com/workanator/go-floc) : 轻松编排 `Go `语言协程
* [go-flow](https://github.com/kamildrazkiewicz/go-flow) : 控制` Go `语言协程的执行顺序
* [go-tools/multithreading](https://github.com/nikhilsaraf/go-tools) : 使用这个轻量级的库和简单的` API `来管理` goroutine` 池。
* [go-trylock](https://github.com/subchen/go-trylock) : 支持 `Golang` 的读写锁的 `TryLock`.
* [go-waitgroup](https://github.com/pieterclaerhout/go-waitgroup) : - 类似 `sync.WaitGroup `的错误处理和并发控制。
* [goccm](https://github.com/zenthangplus/goccm) : `Go `并发管理包,限制了允许并发运行的 `goroutine `的数量
* [gohive](https://github.com/loveleshsharma/gohive) : 高性能且易于使用的`goroutine`池。
* [gollback](https://github.com/vardius/gollback) : 异步简单函数工具,用于管理闭包和回调的执行
* [goworker](https://github.com/benmanns/goworker) : `Goworker `是一个基于 Go 语言的后台worker
* [gowp](https://github.com/xxjwxc/gowp) : - gowp 是限制并发量的` goroutine `池。
* [gpool](https://github.com/Sherifabdlnaby/gpool) : 管理一个可调整大小的上下文感知的`goroutine`池,并以这种方式来约束并发量。
* [grpool](https://github.com/ivpusic/grpool) : 轻量级`Goroutine`池。
* [hands](https://github.com/duanckham/hands) : 用于控制多个`goroutine`的执行和返回策略的进程控制器。
* [Hunch](https://github.com/AaronJan/Hunch) : Hunch提供的功能有。`All、First、Retry、Waterfall`等功能,让异步流控制更加直观。
* [kyoo](https://github.com/dirkaholic/kyoo) : 提供了一个无限的作业队列和并发的工作池。
* [neilotoole/errgroup](https://github.com/neilotoole/errgroup) : ` sync/errgroup`的替代方案,限于N个`worker goroutine`池。
* [nursery](https://github.com/arunsworld/nursery) : `Go`中的结构化并发
* [oversight](https://cirello.io/oversight) : `versight `是 `Erlang `监督树的完整实现。
* [parallel-fn](https://github.com/rafaeljesus/parallel-fn) : 并行执行函数。
* [pond](https://github.com/alitto/pond) : 在 `Go` 中编写的最小化和高性能的 `goroutine `工作池。
* [pool](https://github.com/go-playground/pool) : 便于goroutine处理和取消的有限的消费者`goroutine`池或无限的`goroutine`池,
* [queue](https://github.com/AnikHasibul/queue) : 类似于`sync.WaitGroup`的队列包。帮助你控制和等待`goroutine`的执行,比如等待所有goroutine的结束等等。
* [routine](https://github.com/x-mod/routine) : 利用`context`的`go routine`实现。
* [semaphore](https://github.com/kamilsk/semaphore) : 基于管道和上下文的加锁/解锁操作。
* [semaphore](https://github.com/marusama/semaphore) : 基于CAS的快速可调整大小的semaphore实现(比基于管道的semaphore实现更快)。
* [stl](https://github.com/ssgreg/stl) : 基于软件事务性内存(`STM`)并发控制机制的软件事务性锁。
* [threadpool](https://github.com/shettyh/threadpool)`Golang`线程池的实现。
* [tunny](https://github.com/Jeffail/tunny) : `Go `语言协程池
* [worker-pool](https://github.com/vardius/worker-pool) : `Go`简单的异步`worker`池。
* [workerpool](https://github.com/gammazero/workerpool) : 用于限制任务执行的并发性的`goroutine`缓冲池。
----
## GUI
* [app](https://github.com/murlokswarm/app) : 使用`Go, HTML` 和 `CSS` 进行应用程序开发的库, 支持` MacOS, Windows`。
* [fyne](https://github.com/fyne-io/fyne) : 基于`Material Design`为`Go`设计的跨平台本地GUI。支持 Linux, macOS, Windows, BSD, iOS` 和 Android.
* [go-astilectron](https://github.com/asticode/go-astilectron) : 使用`GO`和`HTML/JS/CSS`(由Electron提供支持)构建跨平台GUI应用程序
* [go-gtk](http://mattn.github.io/go-gtk/) : `GTK`的`Go`绑定。
* [go-sciter](https://github.com/sciter-sdk/go-sciter) : `Sciter` 的` Go` 语言接口,支持现代 GUI 程序开发的、嵌入式 HTML/CSS/脚本引擎。具有跨平台特性。
* [gotk3](https://github.com/gotk3/gotk3) : ` GTK3 `的Go语言接口
* [gowd](https://github.com/dtylman/gowd) : 使用`Go, HTML, CSS `和` NW.js` 语言进行快速、简单的桌面UI开发。具有跨平台特性
* [qt](https://github.com/therecipe/qt) : ` Qt`的`Go`语言接口 (支持 `Windows,macOS,Linux,Android,iOS,Sailfish OS, Raspberry Pi`)
* [ui](https://github.com/andlabs/ui) : 跨平台的原生 GUI 库
* [Wails](https://wails.app) : 使用内置的 `HTML` 渲染器。
* [walk](https://github.com/lxn/walk) : `windows `应用程序开发工具包
* [webview](https://github.com/zserge/webview) : 支持双向` JavaScript `绑定的跨平台 webview 窗口库(`Windows,macOS,Linux`)。
* [go-appindicator](https://github.com/dawidd6/go-appindicator) : `libappindicator3 C`库的Go绑定。
* [gosx-notifier](https://github.com/deckarep/gosx-notifier) : `OSX` 桌面提醒库
* [mac-activity-tracker](https://github.com/prashantgupta24/activity-tracker) : ` OSX` 库,用于通知机器上的任何(可插拔)活动。
* [mac-sleep-notifier](https://github.com/prashantgupta24/mac-sleep-notifier) : - `golang`中的OSX睡眠/唤醒通知库。
* [robotgo](https://github.com/go-vgo/robotgo) : 跨平台`GUI`自动化工具,可以控制鼠标、键盘及其他设备
* [systray](https://github.com/getlantern/systray) : 跨平台的` Go` 语言库,用于在桌面提醒区域放置按钮及菜单
* [trayhost](https://github.com/shurcooL/trayhost) : 跨平台的 `Go` 语言库,用于在主机系统任务条区域放置按钮及菜单
----
## 硬件
`与硬件交互的库、工具`

* 请参考 [go-hardware](https://github.com/rakyll/go-hardware)
----
## Images 图像处理
* [bild](https://github.com/anthonynsimon/bild) : 汇集了使用 `Go `语言编写的图像处理算法
* [bimg](https://github.com/h2non/bimg) : 利用` libvips `进行快速高效的图像处理
* [cameron](https://github.com/aofei/cameron) : `Go`的头像生成器。
* [canvas](https://github.com/tdewolff/canvas) : 将矢量图形转换成 `PDF、SVG `或光栅化图像。
* [darkroom](https://github.com/gojek/darkroom) : 图像代理,具有可更改的存储后端和图像处理引擎,注重速度和弹性。
* [draft](https://github.com/lucasepe/draft) : 使用简单的YAML语法为`GraphViz`生成高级微服务架构图。
* [geopattern](https://github.com/pravj/geopattern) : 从字符串创建优美的图样
* [gg](https://github.com/fogleman/gg) : 使用` Go `编写的 `2D `渲染程序
* [gift](https://github.com/disintegration/gift) : 图像处理过滤器包
* [gltf](https://github.com/qmuntal/gltf) : 高效且强大的`glTF 2.0`读取器、写入器和验证器。
* [go-cairo](https://github.com/ungerik/go-cairo) : `cairo` 图形库的 `Go `语言接口
* [go-gd](https://github.com/bolknote/go-gd) : `GD `库的` Go` 语言接口
* [go-nude](https://github.com/koyachi/go-nude) : 使用 `Go` 语言进行裸替检测
* [go-opencv](https://github.com/lazywei/go-opencv) : `OpenCV` 的 `Go `语言接口
* [go-webcolors](https://github.com/jyotiska/go-webcolors) : `webcolors` 库的` Go `语言接口
* [gocv](https://github.com/hybridgroup/gocv) : 使用` OpenCV 3.3+` 的计算机视觉的 `Go` 包。
* [goimagehash](https://github.com/corona10/goimagehash) : `Go`感知图像哈希包。
* [goimghdr](https://github.com/corona10/goimghdr) : `imghdr `模块为 Go 确定文件中包含的图像类型。
* [govatar](https://github.com/o1egl/govatar) : 用于生成有趣头像的库和命令行工具。
* [gridder](https://github.com/shomali11/gridder) : 基于网格的`2D`图形库。
* [image2ascii](https://github.com/qeesung/image2ascii) : 将图像转换为`ASCII`码。
* [imagick](https://github.com/gographics/imagick) : `ImageMagick `的 `MagickWand C `语言` API` 的 `Go `语言接口
* [imaginary](https://github.com/h2non/imaginary) : 快速且简单的 `HTTP `微服务,用于图像缩放
* [imaging](https://github.com/disintegration/imaging) : 简单的`Go`图像处理包。
* [img](https://github.com/hawx/img) : 图像操作工具精选集
* [ln](https://github.com/fogleman/ln) : ` 3D` 图线艺术渲染
* [mergi](https://github.com/noelyahan/mergi) : 用于图像处理的工具和` Go` 库(合并、裁剪、调整大小、水印、动画)。
* [mort](https://github.com/aldor007/mort) : 用`Go`编写的存储和图像处理服务器。
* [mpo](https://github.com/donatj/mpo) : ` MPO 3D` 照片解码与转换工具.
* [picfit](https://github.com/thoas/picfit) : 一个使用 `Go `语言编写的图片缩放服务器
* [pt](https://github.com/fogleman/pt) : 光线追踪引擎
* [resize](https://github.com/nfnt/resize) : 使用 `Go`语言编写的具有常见差值功能的图片缩放工具
* [rez](https://github.com/bamiaux/rez) : 纯 `Go` 及` SIMD `实现的图像缩放库
* [smartcrop](https://github.com/muesli/smartcrop) : - 为任意图片进行剪裁的工具
* [steganography](https://github.com/auyer/steganography) : 用于`LSB`隐写的纯`Go`库。
* [stegify](https://github.com/DimitarPetrov/stegify) : 用于`LSB`隐写的`Go`工具,能够隐藏图像中的任何文
* [svgo](https://github.com/ajstarks/svgo) : 用于生成 `SVG `的` Go `语言库
* [tga](https://github.com/ftrvxmtrx/tga) : `tga `是一个` TARGA `图像格式解码/编码器
## 物联网(IOT)
* [connectordb](https://github.com/connectordb/connectordb) : 针对`iot`的开源物联网平台
* [devices](https://github.com/goiot/devices) : 管理物联网设备的套件库
* [eywa](https://github.com/xcodersun/eywa) : ` Eywa` 是一个持续追踪所有连接设备的连接管理器
* [flogo](https://github.com/tibcosoftware/flogo) :` FloGo `是一个用于物联网 `Edge App `及集成的开源框架
* [gatt](https://github.com/paypal/gatt) : ` Gatt `是一个用于创建低功耗蓝牙外设的库
* [gobot](https://github.com/hybridgroup/gobot/) : ` Gobot` 是一个用于机器人,物理计算以及物联网的库
* [huego](https://github.com/amimof/huego) : 适用于 `Go `的广泛的 `Philips Hue `客户端库。
* [iot](https://github.com/vaelen/iot/) : `IoT`是实现`Google IoT Core`设备的简单框架。
* [mainflux](https://github.com/Mainflux/mainflux) : 工业物联网消息传递和设备管理服务器。
* [periph](https://periph.io/) : 外设`I/O,`用于连接低级板卡设施。
* [sensorbee](https://github.com/sensorbee/sensorbee) : 轻量级物联网流处理引擎
## 作业调度
* [clockwerk](http://github.com/onatm/clockwerk) : 使用简单、流畅的语法来调度周期性作业的`Go`包。
* [clockwork](https://github.com/whiteShtef/clockwork) : `Go`中简单直观的作业调度库。
* [go-cron](https://github.com/rk/go-cron) : ` Go`的简单`Cron`库,它可以在不同的时间间隔执行闭包或函数,主要用于web应用程序和长期运行的守护进程。
* [go-quartz](https://github.com/reugn/go-quartz) : 简单、零依赖的`Go`调度库。
* [gocron](https://github.com/go-co-op/gocron) : 简单流畅的`Go`作业调度。这是·`jasonlvhit/gocron`·`的一个积极维护的fork.
* [gron](https://github.com/roylee0704/gron) : 使用简单的 `Go API` 定义基于时间的任务,`Gron `的调度器将相应地运行它们。
* [JobRunner](https://github.com/bamzi/jobrunner) : 智能且功能丰富的`cron`任务调度器,内置任务队列和实时监控。
* [jobs](https://github.com/albrow/jobs) : 持久而灵活的后台作业库。
* [leprechaun](https://github.com/kilgaloon/leprechaun) : 工作调度器,支持`webhooks、crons`和经典调度系统。
* [scheduler](https://github.com/carlescere/scheduler) : ` Cronjobs`调度系统。
----
## JSON
* [ajson](https://github.com/spyzhov/ajson) : `golang`实现的支持`JSONPath`的抽象`JSON`格式解析库。
* [dynjson](https://github.com/cocoonspace/dynjson) : 向客户端提供自定义的`JSON`格式的动态`API`库
* [ej](https://github.com/lucassscaravelli/ej) : 从不同的数据写入和读取`JSON`的库。
* [epoch](https://github.com/vtopc/epoch) : 包含用于将`Unix`时间戳,`epoch`转换为JSON中的内置时间类型的处理库。
* [gjo](https://github.com/skanehira/gjo) : 用于创建`JSON`对象的小工具。
* [GJSON](https://github.com/tidwall/gjson) : 用一行代码获取`JSON`值。
* [go-jsonerror](https://github.com/ddymko/go-jsonerror) : `Go-JsonError`的目的是让我们能够轻松创建遵循`JsonApi`规范的`json`响应错误。
* [go-respond](https://github.com/nicklaw5/go-respond) : 用于处理常见`HTTP JSON`响应的`Go`包。
* [gojq](https://github.com/elgs/gojq) : `Golang`中的`JSON`查询库。
* [gojson](https://github.com/ChimeraCoder/gojson) : 从示例 `JSON `自动生成 `Go`结构体定义的库。
* [JayDiff](https://github.com/yazgazan/jaydiff) : 用`Go`编写的`JSON`差异比较工具。
* [jettison](https://github.com/wI2L/jettison) : 用于` Go `的高性能、无反射的` JSON `编码器。
* [JSON-to-Go](https://mholt.github.io/json-to-go/) : 将`JSON`转换为`Go`结构
* [json2go](https://github.com/m-zajac/json2go) : 高级`JSON`到`Go`结构的转换。提供能够解析多个`JSON`文档并创建适合所有JSON文档的结构的包。
* [jsonapi-errors](https://github.com/AmuzaTkts/jsonapi-errors) : 基于`JSON API`错误引用的`Go `语言封装。
* [jsonf](https://github.com/miolini/jsonf) : 用于高亮格式化和结构查询JSON的控制台工具。
* [jsongo](https://github.com/ricardolonga/jsongo) : ` Fluent API,`使其更容易创建`Json`对象。
* [jsonhal](https://github.com/RichardKnop/jsonhal) : ,用于将自定义的结构体`marshal`为兼容`HAL`的`JSON response`的库。
* [jzon](https://github.com/zerosnake0/jzon) : 兼容标准`json`库的`JSON`库。
* [kazaam](https://github.com/Qntfy/kazaam) : 转换任意`json`文档的的`API`库。
* [mapslice-json](https://github.com/mickep76/mapslice-json) : 用于有序地对`JSON`中的`map`结构进行`marshal/unmarshal`。
* [mp](https://github.com/sanbornm/mp) : 简单的 `cli `电子邮件解析器,能够接受标准输入并输出`JSON`日志
----
## Logging 日志库
* [distillog](https://github.com/amoghe/distillog) : 分级日志记录库(可以把它想象成 `stdlib + log levels`)。
* [glg](https://github.com/kpango/glg) : 简单、快速、分级的日志库
* [glo](https://github.com/lajosbencz/glo) : 分级记录日志的库
* [glog](https://github.com/golang/glog) : `Go`的分级日志
* [go-cronowriter](https://github.com/utahta/go-cronowriter) : 对日志文件基于当前日期和时间进行自动循环写入的库,类似 `cronolog`.
* [go-log](https://github.com/pieterclaerhout/go-log) : 一个包含`rack traces`、对象转储和可选时间戳的日志库。
* [go-log](https://github.com/subchen/go-log) : 简单且可配置的`go`日志库,包括分级、格式化和多项输出的特性。
* [go-log](https://github.com/siddontang/go-log) : 日志库支持级别和多处理程序。
* [go-log](https://github.com/ian-kent/go-log) : `Go`中的`Log4j`实现。
* [go-logger](https://github.com/apsdehal/go-logger) : 支持日志分级的简单的日志工具
* [gologger](https://github.com/sadlil/gologger) : 简单易用的日志库,可以在彩色控制台、文件或 `Elasticsearch `中记录
* [gomol](https://github.com/aphistic/gomol) : 支持多种输出,结构化的日志模块,可以扩展它的输出
* [gone/log](https://github.com/One-com/gone/tree/master/log) : 快速、可扩展、全功能、兼容标准库的日志库
* [httpretty](https://github.com/henvic/httpretty) : 将常规的 `HTTP` 请求漂亮地打印在终端上用于调试(类似于 `http.DumpRequest`)。
* [journald](https://github.com/ssgreg/journald) : `systemd` 日志的本地日志` API `的 `Go `实现。
* [kemba](https://github.com/clok/kemba) : 受[debug](https://github.com/visionmedia/debug) 启发的小型调试日志工具,非常适合CLI工具和应用程序。
* [log](https://github.com/aerogo/log) : `O(1)`复杂度的日志系统,允许你将一个日志连接到多个输出(例如 `stdout`、文件和一个 `TCP` 连接)。
* [log](https://github.com/apex/log) : Go的结构化日志包。
* [log](https://github.com/go-playground/log) : 简单、可配置、可扩展的`Go`结构化日志库。
* [log](https://github.com/teris-io/log) : 结构化日志接口。
* [log-voyage](https://github.com/firstrow/logvoyage) :用` golang `编写的全功能日志库。
* [log15](https://github.com/inconshreveable/log15) : 简单、强大的`Go`日志记录。
* [logdump](https://github.com/ewwwwwqm/logdump) : 用于多级日志记录的软件包。
* [logex](https://github.com/chzyer/logex) : ` Golang`日志库,支持跟踪和级别,由标准日志库封装。
* [logger](https://github.com/azer/logger) : 日志库。
* [logmatic](https://github.com/borderstech/logmatic) : ` Golang`的彩色日志记录器,具有动态日志级别配置功能。
* [logo](https://github.com/mbndr/logo) : `Golang`的日志记录库,可配置不同的写入器。
* [logrusiowriter](https://github.com/cabify/logrusiowriter) : 使用 `logrus logger` 的 `io.Writer` 实现。
* [logrus](https://github.com/sirupsen/logrus) : ` Go `的结构化日志记录器。
* [logrusly](https://github.com/sebest/logrusly) : [logrus](https://github.com/sirupsen/logrus)插件,用于将错误发送到[Loggly](https://www.loggly.com/)
* [logur](https://github.com/logur/logur) : 日志记录接口和日志记录最佳实践的整合,它对诸多知名库如[logrus](https://github.com/sirupsen/logrus)、[go-kit log](https://github.com/go-kit/kit/tree/master/log)、[zap](https://github.com/uber-go/zap) , [zerolog](https://github.com/rs/zerolog)等的功能进行了集成
* [logutils](https://github.com/hashicorp/logutils) : 对 `Go `语言标准日志工具进行了扩展,使其更好用
* [logxi](https://github.com/mgutz/logxi) : 十二要素 app 日志工具,非常快速。
* [lumberjack](https://github.com/natefinch/lumberjack) : 简单的循环日志工具。
* [mlog](https://github.com/jbrodriguez/mlog) : 简单的日志模块,可以分5级并有一个可选的循环日志文件记录功能,支持 stdout/stderr 输出.
* [onelog](https://github.com/francoispqt/onelog) : `Onelog`是一个简单但非常高效的JSON日志库。它是目前所有场景下最快的JSON日志器。同时,它也是所需最少内存分配的库。
* [ozzo-log](https://github.com/go-ozzo/ozzo-log) : 高性能日志库,支持日志分级、分类及过滤。可以将过滤后的信息发送到不同的目的地(例如: 控制台、网络、邮箱).
* [phuslu/log](https://github.com/phuslu/log) : - 结构化日志系统。
* [rollingwriter](https://github.com/arthurkiller/rollingWriter) : ` RollingWriter`是一个具有自动轮转功能的io.Writer实现,它有多种策略来提供日志文件旋转。
* [seelog](https://github.com/cihub/seelog) : 灵活的、解耦的、格式化的日志库
* [spew](https://github.com/davecgh/go-spew) : - 为 `Go `语言的数据结构实现了一个整洁的打印功能,有助于调试
* [sqldb-logger](https://github.com/simukti/sqldb-logger) : -用于`Go SQL`数据库驱动的日志记录器,无需修改现有的`*sql.DB`标准用法。
* [stdlog](https://github.com/alexcesaro/log) : `Stdlog `是一个面向对象的库,提供了分级日志功能,对于定时任务很有用.
* [tail](https://github.com/hpcloud/tail) : 这个 `Go `语言软件包力争模拟 `BSD tail `的功能
* [xlog](https://github.com/xfxdev/xlog) : 插件架构以及灵活的日志系统,具有日志等级控制,多日志目标以及自定义日志格式功能
* [xlog](https://github.com/rs/xlog) : 结构化日志库
* [zap](https://github.com/uber-go/zap) : 快速的、结构化的、分级的日志库
* [zerolog](https://github.com/rs/zerolog) : 零内存分配 的`JSON `日志库.
----
## 机器学习
* [bayesian](https://github.com/jbrukh/bayesian) : 贝叶斯分类器
* [CloudForest](https://github.com/ryanbressler/CloudForest) : 纯 `Go `语言编写的快速、灵活、多线程决策树
* [eaopt](https://github.com/MaxHalford/eaopt) : 进化优化库。
* [evoli](https://github.com/khezen/evoli) : 遗传算法和粒子群优化库。
* [fonet](https://github.com/Fontinalis/fonet) : 用`Go`编写的深度神经网络库。
* [go-cluster](https://github.com/e-XpertSolutions/go-cluster) : `k-modes`和`k-prototypes`聚类算法的`Go`实现。
* [go-deep](https://github.com/patrikeh/go-deep) : 用`Go`编写的功能丰富的神经网络库。
* [go-fann](https://github.com/white-pony/go-fann) : 快速人工神经网络库`(FANN)`的 `Go` 语言借口.
* [go-galib](https://github.com/thoj/go-galib) : `Go `语言编写的遗传算法库
* [go-pr](https://github.com/daviddengcn/go-pr) : ` Go `语言模式识别库
* [gobrain](https://github.com/goml/gobrain) : 用`go`语言编写的神经网络。
* [godist](https://github.com/e-dard/godist) : 各种概率分布以及相关方法库。
* [goga](https://github.com/tomcraven/goga) : `Go` 语言遗传算法库
* [GoLearn](https://github.com/sjwhitworth/golearn) : ` Go `语言通用机器学习库
* [golinear](https://github.com/danieldk/golinear) : ` liblinear` 库的 `Go `语言接口
* [GoMind](https://github.com/surenderthakran/gomind) : Go 中的一个简单的神经网络库。
* [goml](https://github.com/cdipaolo/goml) : 即时`go`语言机器学习库
* [gonet](https://github.com/dathoangnd/gonet) : ` Go `的神经网络。
* [Goptuna](https://github.com/c-bata/goptuna) : 用`Go`编写的黑盒函数的贝叶斯优化框架。一切都将被优化。
* [goRecommend](https://github.com/timkaye11/goRecommend) : `Go` 语言推荐算法库
* [gorgonia](https://github.com/gorgonia/gorgonia) : 基于图的计算库,类似于 `Theano`。提供了一些原型用于构建各种个样的机器学习和神经网络算法
* [gorse](https://github.com/zhenghaoz/gorse) : 用`Go`编写的基于协作过滤的离线推荐系统后台。
* [goscore](https://github.com/asafschers/goscore) : 用于 `PMML` 的 `Go` 评分` API`。
* [gosseract](https://github.com/otiai10/gosseract) : 用于`OCR`(光学字符识别)的`Go`包,使用`Tesseract C++`库。
* [libsvm](https://github.com/datastream/libsvm) : ` libsvm `的` Go` 语言版本,基于 `LIBSVM 3.14.`
* [neat](https://github.com/jinyeom/neat) : 即插即用的并行` Go` 语言框架,用于增强拓扑神经网络 (NEAT).
* [neural-go](https://github.com/schuyler/neural-go) : `Go `语言实现的多层感知神经网络,通过反向传播算法进行训练.
* [ocrserver](https://github.com/otiai10/ocrserver) : 简单的`OCR API`服务器,很容易被`Docker`和`Heroku`部署。
* [onnx-go](https://github.com/owulveryck/onnx-go) : `Open Neural Network Exchange (ONNX)`的`Go`接口。
* [probab](https://github.com/ThePaw/probab) : 概率分布函数。贝叶斯推理。用纯`Go`编写。
* [randomforest](https://github.com/malaschitz/randomForest) : 简单易用的 `Go `随机森林库。
* [regommend](https://github.com/muesli/regommend) : 推荐系统及协同过滤引擎
* [shield](https://github.com/eaigner/shield) : `go`语言实现的贝叶斯文本分类器,具有灵活的标记器和存储后端。
* [tfgo](https://github.com/galeone/tfgo) : 易于使用的`Tensorflow `` g`o语言封装:简化了官方`Tensorflow Go`的使用。
* [Varis](https://github.com/Xamber/Varis) : `Golang`神经网络。
----
## 消息系统
* [ami](https://github.com/kak-tus/ami) : 基于`Redis`集群可靠队列的`Go`客户端。
* [APNs2](https://github.com/sideshow/apns2) : `go`语言实现的基于`HTTP/2`苹果推送通知提供服务,可以向`iOS`、`tvOS`、`Safari`和`OSX`应用程序发送推送通知
* [Asynq](https://github.com/hibiken/asynq) : 建立在 `Redis` 之上,为 `Go` 提供的简单、可靠、高效的分布式任务队列,。
* [Beaver](https://github.com/Clivern/Beaver) : 实时消息服务器,用于在网络和移动应用中构建可扩展的应用内通知、多人游戏、聊天应用。
* [Benthos](https://github.com/Jeffail/benthos) : 在一系列协议之间建立消息流`go`代码库
* [Bus](https://github.com/mustafaturan/bus) : 用于内部通信的简约型消息总线实现。
* [Centrifugo](https://github.