Excel
- excelize: 提供了一组允许您写入和读取XLSX / XLSM / XLTM文件的功能
日期
- carbon: 一个轻量级、语义化、对开发者友好的 golang 时间处理库
服务管理
- overseer: 一个用于在 Go (golang) 中创建可监控、正常重启、自我升级二进制文件的包。
框架
域名
- whois(likexian): Whois 是一个简单的 Go 模块,用于域名和 ip whois 信息查询。
高级控制台 UI
- asciigraph: Go 包,用于在命令行应用程序中制作轻量级 ASCII 折线图 ╭┈╯,没有其他依赖项.
- aurora: 支持 fmt 的 ANSI 终端颜色。printf/sprintf。
- box-cli-maker: 为您的 CLI 制作高度定制的盒子.
- bubble-table: 珍珠奶茶的交互式表格组件.
- bubbles: 珍珠奶茶的 TUI 组件。
- bubbletea: 基于 The Elm 架构构建终端应用程序的 Go 框架.
- cfmt: 受引导颜色类启发的上下文 fmt.
- cfmt: 简单方便的格式化风格化输出,与 fmt 库完全兼容。
- chalk: 用于美化终端/控制台输出的直观软件包。
- colourize: 终端中 ANSI 彩色文本的 Go 库.
- crab-config-files-templating: 用于 kubernetes 清单或常规配置文件的动态配置文件模板化工具.
- ctc: 非侵入式跨平台终端颜色库,无需修改 Print 方法。
- go-ataman: 用于在终端中呈现 ANSI 彩色文本模板的 Go 库.
- go-colorable: 适用于 Windows 的可着色编写器.
- go-colortext: 用于在终端中输出颜色的 Go 库.
- go-isatty: golang 的 isatty.
- go-palette: 使用 ANSI 颜色提供优雅方便的样式定义的 Go 库.完全兼容并包装了 fmt 库,以实现漂亮的终端布局。
- go-prompt: 受 python-prompt-toolkit 启发,用于构建强大的交互式提示的库.
- gocui: 旨在创建控制台用户界面的极简 Go 库.
- gommon/color: 设置终端文本的样式。
- gookit/color: 终端显色工具库,支持16色、256色,RGB显色输出,兼容Windows。
- lipgloss: 在终端中以声明方式定义颜色、格式和布局的样式。
- marker: 匹配和标记字符串以获得彩色终端输出的最简单方法。
- mpb: 终端应用程序的多进度条。
- progressbar: 适用于每个操作系统的基本线程安全进度条.
- pterm: 一个库,用于美化每个平台上的控制台输出,具有许多可组合的组件.
- simpletable: 使用 Go 在终端中的简单表.
- spinner: Go 包,可轻松为终端微调器提供选项。
- tabby: 一个用于超级简单的 Golang 表的小型库.
- table: 基于终端颜色的表的小型库.
- 表格: 从命令行实用程序打印 ASCII 表,而无需将大量数据传递给 API。
- termbox-go: Termbox 是一个用于创建跨平台基于文本的界面的库.
- termdash: 基于 termbox-go 并受 termui 启发的 Go 终端仪表板.
- termenv: 为您的终端应用程序提供高级ANSI样式和颜色支持.
- termui: 基于 termbox-go 并受 blessed-contrib 启发的 Go 终端仪表板.
- uilive: 用于实时更新终端输出的库。
- uiprogress: 灵活的库,用于在终端应用程序中呈现进度条.
- uitable: 库,用于使用表格数据提高终端应用程序中的可读性.
- yacspin: 另一个 CLi 微调器包,用于与终端微调器一起使用。
验证
- checkdigit: 提供校验位算法(Luhn、Verhoeff、Damm)和计算器(ISBN、EAN、JAN、UPC等)。
- gody: 🎈 Go 的轻量级结构验证器.
- govalid: 基于标记的结构的快速验证.
- govalidator: 字符串、数字、切片和结构的验证器和清理器.
- govalidator: 使用简单的规则验证 Golang 请求数据.深受 Laravel 请求验证的启发。
- Jio - Jio: 是一个类似于 JOI 的 JSON 模式验证器.
- ozzo-validation: 支持各种数据类型(结构、字符串、映射、切片等)的验证,并在通常的代码构造中指定可配置和可扩展的验证规则,而不是结构标记。
- validate: 用于数据验证和过滤的 Go 包。支持 validate Map, Struct, Request(Form, JSON, url.值、上传的文件)数据和更多功能。
- validate: 此包提供了一个框架,用于为 Go 应用程序编写验证。
- validator: Go Struct 和 Field 验证,包括 Cross Field、Cross Struct、Map、Slice 和 Array diving.
- Validator: 用 Go 编写的轻量级模型验证器,包含 VFs:Min、Max、MinLength、MaxLength、Length、Enum、Regex.
- 瓦利克斯: 用于验证请求的 Go 包
音频处理
- flac: 支持 FLAC 流的原生 Go FLAC 编码器/解码器.
- gaad: Native Go AAC 比特流解析器.
- GoAudio: 本机Go音频处理库.
- gosampleRate: Go 的 libSampleRate 绑定。
- id3v2: Go 的 ID3 解码和编码库.
- malgo: 迷你音频库.
- minimp3: 轻量级 MP3 解码器库.
- Oto: 一个在多个平台上播放声音的低级库。
- PortAudio - PortAudio: 音频 I/O 库的 Go 绑定。
音译
- enca: libenca 的最小 cgo 绑定,用于检测字符编码.
- go-unidecode - Unicode: 文本的 ASCII 音译.
- gounidecode: Go 的 Unicode 音译器(也称为 unidecode)。
- 音译器: 提供单向字符串音译,支持特定于语言的音译规则。
集
- dsu: Go 中的脱节集合数据结构实现。
- golang-set: Go 的线程安全和非线程安全高性能集.
- goset: Go 的有用 Set 集合实现。
- set: 使用 LinkedHashMap 在 Go 中实现简单的集合数据结构。
队列
- deque: 高度优化的双端队列。
- deque: 快速环形缓冲区 deque(双端队列)。
- goconcurrentqueue: 并发 FIFO 队列。
- memlog: 受 Apache Kafka 启发的易于使用、轻量级、线程安全且仅追加的内存数据结构.
- queue: Go 的多个线程安全通用队列实现。
错误处理
- emperror: Go 库和应用程序的错误处理工具和最佳实践.
- eris: 在 Go 中处理、跟踪和记录错误的更好方法。与标准错误库和 github.com/pkg/errors 兼容。
- errlog: 可破解的软件包,用于确定错误的源代码(以及其他一些快速调试功能).可就地插入任何记录器。
- errors: 标准库错误包和 github.com/pkg/errors 的直接替换。提供各种错误处理基元。
- errors: 使用分类原语进行简单的golang错误处理.
- errors: 最简单的错误包装器,具有出色的性能和最小的内存开销。
- errors: 内置 Go 错误的直接替换。这是一个最小的错误处理包,具有自定义错误类型、用户友好的消息、Unwrap & Is。具有非常易于使用和直接的辅助功能。
- errors: Go 错误库,可通过网络进行错误移植。
- errorx: 功能丰富的错误包,包含堆栈跟踪、错误组合等。
- exception: 一个简单的实用程序包,用于在 Golang 中使用 try-catch 进行异常处理。
- Falcon: 一个简单但功能强大的错误处理包。
- Fault: 一种符合人体工程学的包装错误机制,以便为错误值提供结构化元数据和上下文。
- go-multierror: Go (golang) 包,用于将错误列表表示为单个错误.
- oops: 使用上下文、堆栈跟踪和源片段进行错误处理。
- tracerr: 堆栈跟踪和源片段的 Golang 错误。
配置
- aconfig: 简单、有用且自以为是的配置加载器.
- cleanenv: 简约的配置读取器(来自文件,ENV和任何您想要的地方).
- config: 云原生应用程序配置。仅将 ENV 绑定到两行结构。
- 配置: 在两行代码中使用文件、环境变量或标志配置应用
- config: 具有环境变量和标志解析的 JSON 或 YAML 配置包装器。
- configuration: 用于从 env 变量、文件、标志和“default”标签初始化配置结构的库.
- configure: 通过多个源提供配置,包括 JSON、标志和环境变量。
- configuro: 来自ENV和文件的自以为是的配置加载和验证框架,专注于12因素兼容的应用程序.
- confita: 将配置从多个后端级联加载到一个结构中.
- conflate: 库/工具,用于合并来自任意URL的多个JSON/YAML / TOML文件,针对JSON模式进行验证,以及应用架构中定义的默认值.
- env: 将环境变量解析为 Go 结构(使用默认值)。
- env: 用于将环境变量加载到结构中的轻量级包。
- envcfg: 将环境变量解封为 Go 结构。
- envconf: 从环境进行配置。
- envconfig: 从环境变量中读取配置。
- envh: 用于管理环境变量的帮助程序。
- fig: 用于从文件和环境变量中读取配置的微型库(带有验证和默认值)。
- gcfg: 将 INI 样式的配置文件读入 Go 结构体;支持用户定义的类型和小节。
- genv: 通过 dotenv 支持轻松读取环境变量.
- go-aws-ssm: 从 AWS System Manager - Parameter Store 获取参数的 Go 程序包。
- go-conf: 基于带注释结构的应用程序配置的简单库.它支持从环境变量、配置文件和命令行参数中读取配置。
- go-ini: 封送和解封 INI 文件的 Go 包.
- go-ssm-config: 用于从 AWS SSM(Parameter Store)加载配置参数的 Go 实用程序。
- go-up: 一个简单的配置库,具有递归占位符分辨率,没有魔法.
- goConfig: 将结构解析为输入,并使用命令行、环境变量和配置文件中的参数填充此结构的字段。
- godotenv: Ruby 的 dotenv 库的 Go 端口(从 加载环境变量)。.env
- gofigure: Go 应用程序配置变得简单。
- GoLobby/Config - GoLobby Config: 是 Go 编程语言的轻量级但功能强大的配置管理器.
- gone/jconf: 模块化 JSON 配置.保留配置结构及其配置的代码,并将解析委托给子模块,而不会牺牲完整的配置序列化。
- gonfig: 基于标签的配置解析器,它将来自不同提供程序的值加载到类型安全结构中.
- gookit/config: 应用程序配置管理(load,get,set)。支持 JSON、YAML、TOML、INI、HCL。多文件加载,数据覆盖合并。
- harvester - Harvester: ,一个易于使用的静态和动态配置包,支持播种、环境变量和 Consul 集成。
- hjson: 人类JSON,人类的配置文件格式.宽松的语法,更少的错误,更多的注释。
- hocon: 用于处理HOCON(一种人性化的JSON超集)格式的配置库,支持环境变量,引用其他值,注释和多个文件等功能.
- ingo: 标志保留在类似 ini 的配置文件中。
- ini: 用于读取和写入 INI 文件的 Go 包。
- ini: INI 解析器和写入库,解编组到结构,编组到 Json,写入文件,监视文件.
- joshbetz/config: Go 的小型配置库,可解析环境变量、JSON 文件并在 SIGHUP 上自动重新加载.
- kelseyhightower/envconfig: 用于管理环境变量配置数据的 Go 库.
- koanf: 轻量级、可扩展的库,用于读取 Go 应用程序中的配置.内置对 JSON、TOML、YAML、env、命令行的支持。
- konfig: 分布式处理时代的 Go 的可组合、可观察和高性能配置处理.
- kong: 命令行解析器,支持任意复杂的命令行结构和其他配置源,例如YAML,JSON,TOML等(successor )。kingpin
- mini: 用于解析 ini 样式配置文件的 Golang 包.
- nasermirzaei89/env: 用于读取环境变量的简单有用的包。
- nfigure: 来自命令行的基于每个库结构标签的配置(Posix 和 Go 风格);环境、JSON、YAML
- onion: Go 的基于层的配置,支持 JSON、TOML、YAML、属性、etcd、env 和使用 PGP 的加密。
- piper: 具有配置继承和密钥生成的Viper包装器.
- store: Go 的轻量级配置管理器。
- swap: 根据构建环境以递归方式实例化/配置结构。(YAML、TOML、JSON 和 env)。
- typenv: 简约,零依赖,类型化的环境变量库.
- uConfig: 轻量级、零依赖和可扩展的配置管理。
- viper: 用獠牙进行配置。
- xdg: XDG 基本目录规范和 XDG 用户目录的 Go 实现。
- xdg: 遵循 XDG 标准的跨平台包。
身份验证和 OAuth
- authboss: 用于Web的模块化身份验证系统.它试图尽可能多地删除样板和“困难的东西”,以便每次在 Go 中启动新的 Web 项目时,您都可以插入、配置它并开始构建您的应用程序,而无需每次都构建身份验证系统。
- branca: Golang 1.15+ 的 branca 代币规范实现.
- casbin: 支持ACL,RBAC和ABAC等访问控制模型的授权库.
- cookiestxt: 提供 cookie.txt 文件格式的解析器。
- go-guardian: Go-Guardian 是一个 golang 库,它提供了一种简单、干净和惯用的方式来创建强大的现代 API 和 Web 身份验证,支持 LDAP、基本、持有者令牌和基于证书的身份验证.
- go-jose -: JOSE工作组的JSON Web令牌,JSON Web签名和JSON Web加密规范的相当完整的实现.
- gologin: 用于使用 OAuth1 和 OAuth2 身份验证提供程序登录的可链接处理程序。
- gorbac: 在 Golang 中提供轻量级的基于角色的访问控制 (RBAC) 实现。
- gosession: 这是 GoLang 中 net/http 的快速会话。这个包也许是会话机制的最佳实现,或者至少它试图成为一个会话机制。
- goth: 提供了一种简单、干净且惯用的 OAuth 和 OAuth2 使用方式。开箱即用地处理多个提供程序。
- jeff: 具有可插拔后端的简单,灵活,安全且惯用的Web会话管理.
- jwt: 轻量级JSON Web令牌(JWT)库.
- jwt: 用于 Go 的安全、简单和快速的 JSON Web 令牌.
- jwt-auth: Golang http 服务器的 JWT 中间件,具有许多配置选项.
- jwt-go: JSON Web令牌(JWT)的全功能实现.该库支持 JWT 的解析和验证以及生成和签名。
- keto: “桑给巴尔:Google一致的全球授权系统”的开源(Go)实现。提供 gRPC、REST API、NEWSQL 和简单精细的权限语言。支持ACL、RBAC等多种接入模式。
- loginsrv: 具有可插拔后端的 JWT 登录微服务,例如 OAuth2 (Github)、htpasswd、osiam.
- oauth2: goauth2 的后继者。通用 OAuth 2.0 软件包,附带 JWT、Google API、Compute Engine 和 App Engine 支持。
- osin: Golang OAuth2 服务器库.
- otpgen: 用于生成TOTP / HOTP代码的库.
- otpgo: 基于时间的一次性密码(TOTP)和基于HMAC的Go一次性密码(HOTP)库.
- paseto: 与平台无关的安全令牌(PASETO)的Golang实现.
- permissions2: 用于跟踪用户、登录状态和权限的库。使用安全 cookie 和 bcrypt。
- scope: 在 Go 中轻松管理 OAuth2 范围。
- scs: HTTP 服务器的会话管理器。
- securecookie: 高效的安全 cookie 编码/解码。
- session: Web 服务器的 Go 会话管理(包括对 Google App Engine - GAE 的支持)。
- sessions: 用于 go http 服务器的简单、高性能、高度可定制的会话服务.
- sessionup: 简单而有效的HTTP会话管理和识别包.
- sjwt: 简单的 jwt 生成器和解析器.
路由器
- alien: 来自外太空的轻量级快速 http 路由器.
- bellt: 一个简单的 Go HTTP 路由器。
- Bone: 闪电般的HTTP多路复用器.
- Bxog: 用于Go的简单快速的HTTP路由器.它适用于不同难度、长度和嵌套的路线。他知道如何从收到的参数创建 URL。
- chi: 基于网络/上下文构建的小型、快速且富有表现力的 HTTP 路由器.
- fasthttprouter: 从 .第一款适合 .httprouterfasthttp
- FastRouter: 用 Go 编写的快速、灵活的 HTTP 路由器。
- goblin: 基于 trie tree 的 golang http 路由器。
- gocraft/web: Go 中的多路复用器和中间件包.
- Goji - Goji: 是一个简约而灵活的 HTTP 请求多路复用器,支持 .net/context
- GoLobby/Router - GoLobby Router: 是一个轻量级但功能强大的 HTTP 路由器,用于 Go 编程语言.
- goroute: 简单而强大的 HTTP 请求多路复用器.
- GoRouter - GoRouter: 是一个服务器/API 微框架、HTTP 请求路由器、多路复用器、多路复用器,为请求路由器提供中间件支持.net/context
- gowww/router: 闪电般快速的 HTTP 路由器,与 net/http 完全兼容.处理程序接口。
- httprouter: 高性能路由器。使用此和标准 http 处理程序来形成一个非常高性能的 Web 框架。
- httptreemux: 用于Go的高速,灵活的基于树的HTTP路由器.灵感来自 httprouter。
- lars: 是一个轻量级、快速且可扩展的 Go 零分配 HTTP 路由器,用于创建可自定义的框架.
- mux: 强大的 URL 路由器和 golang 调度器.
- nchi: 基于 httprouter 构建的类似 chi 的路由器,带有基于依赖注入的中间件包装器
- ngamux: Go的简单HTTP路由器.
- ozzo-routing: 一个极快的 Go (golang) HTTP 路由器,支持正则表达式路由匹配.完全支持构建 RESTful API。
- pure: 是一个轻量级的 HTTP 路由器,坚持 std “net/http” 实现.
- Siesta: 用于编写中间件和处理程序的可组合框架.
- vestigo: 用于go Web应用程序的高性能,独立,符合HTTP标准的URL路由器.
- violetear: Go HTTP 路由器。
- xmux: 基于支持的高性能多路复用器.httprouternet/context
- xujiajun/gorouter: 一个简单快速的 Go HTTP 路由器.
资源嵌入
- debme: 从现有子目录创建一个。embed.FSembed.FS
- esc: 将文件嵌入到 Go 程序中并提供 http.FileSystem 接口。
- fileb0x: 在 go 中嵌入文件的简单工具,专注于“自定义”和易用性.
- go-resources: 使用 Go 嵌入的不合时宜的资源.
- go.rice - go.rice: 是一个 Go 包,它使使用 HTML、JS、CSS、图像和模板等资源变得非常容易.
- mule: 嵌入外部资源,如图像、电影…放入 Go 源代码以使用 .专注于简单性。go generate
- packr: 将静态文件嵌入 Go 二进制文件的简单方法.
- rebed: 从 Go 1.16 的类型重新创建文件夹结构和文件embed.FS
- statics: 将静态资源嵌入到 go 文件中以进行单个二进制编译 + 与 http 一起使用.文件系统 + 符号链接。
- statik: 将静态文件嵌入到 Go 可执行文件中.
- templify: 将外部模板文件嵌入到 Go 代码中以创建单个文件二进制文件.
- vfsgen: 生成一个静态实现给定虚拟文件系统的 vfsdata.go 文件。
财务
- 会计: Golang 的货币和货币格式。
- ach: 自动清算所 (ACH) 文件的读取器、写入器和验证器。
- bbgo: 用 Go 编写的加密交易机器人框架.包括常见的加密交换 API、标准指标、回测和许多内置策略。
- currency: 处理货币金额,提供货币信息和格式。
- currency: 高性能和准确的货币计算包。
- decimal: 任意精度的定点十进制数。
- decimal: 具有无恐慌算术的不可变十进制数。
- fpdecimal: 小定点小数的快速精确序列化和算术运算
- fpmoney: 快速简单的ISO4217定点十进制货币。
- go-finance: 用于货币时间价值(年金),现金流,利率转换,债券和折旧计算的财务函数库.
- go-finance: 用于获取汇率、通过 VIES 检查增值税号和检查 IBAN 银行帐号的模块。
- go-finnhub: 来自 finnhub.io 的股票市场、外汇和加密数据的客户端。访问来自 60+ 证券交易所、10 家外汇经纪商和 15+ 加密货币交易所的实时金融市场数据。
- go-money: Fowler’s Money 模式的实现.
- go-nowpayments: 加密NOWPayments API的库.
- money: 不可变的货币金额和汇率,具有无恐慌的算术。
- ofxgo: 查询 OFX 服务器和/或解析响应(使用示例命令行客户端)。
- orderbook: Golang 中限价订单簿的匹配引擎。
- payme: 用于 SEPA 支付的二维码生成器(ASCII 和 PNG)。
- sleet: 一个统一的接口,供多个支付服务提供商 (PsP) 处理在线支付。
- techan: 具有高级市场分析和交易策略的技术分析库.
- ticker: 终端股票观察器和股票头寸跟踪器。
- transaction: 嵌入式账户事务数据库,以多线程模式运行。
- vat: 增值税号验证和欧盟增值税税率。
调度作业
- cdule: 支持数据库的作业调度程序库
- cheek: 一个简单的类似调度程序的 crontab,旨在提供 KISS 作业调度方法.
- clockwerk: 使用简单、流畅的语法安排定期作业的 Go 包.
- cronticker: 支持 cron 计划的 ticker 实现.
- Dagu: 无代码工作流执行器.它执行以简单 YAML 格式定义的 DAG。
- go-cron: 用于 go 的简单 Cron 库,可以以不同的时间间隔执行闭包或函数,从每秒一次到每年一次的特定日期和时间.主要用于 Web 应用程序和长时间运行的守护程序。
- go-quartz: 用于 Go 的简单、零依赖调度库.
- gocron: 简单流畅的 Go 作业调度.这是 jasonlvhit/gocron 的一个积极维护的分支。
- goflow: 一个简单但功能强大的 DAG 调度程序和仪表板.
- gron: 使用简单的 Go API 定义基于时间的任务,Gron 的调度器将相应地运行它们.
- gronx: Cron 表达式解析器、任务运行程序和守护进程,使用 crontab 等任务列表.
- JobRunner: 智能且功能强大的 cron 作业调度程序,内置作业队列和实时监控。
- jobs: 持久且灵活的后台作业库.
- leprechaun: 支持 webhook、crons 和经典调度的作业调度程序.
- sched: 能够快进时间的作业调度程序。
- scheduler: Cronjobs 调度变得容易。
- tasks: 一个易于使用的进程内调度器,用于 Go 中的重复性任务。
语言检测
- detectlanguage: 语言检测API Go客户端.支持批量请求、短短语或单词语言检测。
- getlang: 快速自然语言检测包.
- guesslanguage: 用于确定 unicode 文本的自然语言的函数。
- whatlanggo: Go 的自然语言检测包。支持 84 种语言和 24 种文字(书写系统,例如拉丁文、西里尔文等)。
视频
- gmf: FFmpeg av* 库的 Go 绑定。
- go-astisub: 在GO中操作字幕(.srt,.stl,.ttml,.webvtt,.ssa/.ass,图文电视,.smi等)。
- go-astits: 在 GO 中原生解析和解复用 MPEG 传输流 (.ts).
- go-m3u8: Apple m3u8 播放列表的解析器和生成器库.积极维护的 quangngotan95/go-m3u8 版本,具有改进和最新的 HLS 播放列表解析兼容性。
- go-mpd: MPEG-DASH清单文件的解析器和生成器库.
- goav: FFmpeg 的综合 Go 绑定.
- gortsplib: Pure Go RTSP 服务器和客户端库.
- gst: GStreamer 的 Go 绑定。
- libgosubs: 对 go 的字幕格式支持.支持 .srt、.ttml 和 .ass。
- libvlc-go: libvlc 2.X/3.X/4.X(由 VLC 媒体播放器使用)的 Go 绑定。
- m3u8: Apple HLS 的 M3U8 播放列表的解析器和生成器库.
- v4l: 用于 Linux 的视频捕获库,用 Go 编写.
表单
- bind: 将表单数据绑定到任何 Go 值。
- binding: 将表单和 JSON 数据从 net/http 请求绑定到 struct。
- checker - Checker: 通过结构标记中定义的规则或直接通过函数帮助验证用户输入.
- conform: 检查用户输入。根据结构标签修剪、清理和清理数据。
- form: 解码 url。将值编码为 Go 值,并将 Go 值编码为 url。值。双阵列和全地图支持。
- formam: 将表单的值解码为结构。
- forms: 与框架无关的库,用于解析和验证支持多部分表单和文件的表单/ JSON数据.
- gbind: 将数据绑定到任何 Go 值。可以使用内置和自定义表达式绑定功能;支持数据验证
- gorilla/csrf: Go Web 应用程序和服务的 CSRF 保护.
- httpin: 将 HTTP 请求解码为自定义结构,包括查询字符串、表单、HTTP 标头等.
- nosurf: Go 的 CSRF 保护中间件.
- qs: 用于将结构编码为 URL 查询参数的 Go 模块。
- queryparam: 解码为标准或自定义类型的可用结构值。url.Values
网络
- arp - 软件包 arp: 实现 ARP 协议,如 RFC 826 中所述。
- buffstreams: 通过 TCP 流式传输协议缓冲区数据变得容易.
- canopus: CoAP 客户端/服务器实现 (RFC 7252).
- cidranger: Go 的快速 IP 到 CIDR 查找。
- dhcp6: 软件包 dhcp6 实现 DHCPv6 服务器,如 RFC 3315 中所述。
- dns: 用于处理DNS的Go库.
- dnsmonster: 被动DNS捕获/监控框架.
- easytcp: 用 Go (Golang) 编写的轻量级 TCP 框架,使用消息路由器构建.EasyTCP 可帮助您轻松、快速、轻松地构建 TCP 服务器。
- ether: 用于发送和接收以太网帧的跨平台 Go 包。
- ethernet: 软件包以太网实现 IEEE 802.3 以太网 II 帧和 IEEE 802.1Q VLAN 标记的编组和解组。
- event: 用 Golang 编写的简单 I/O 事件通知库。
- fasthttp: 打包 fasthttp 是 Go 的快速 HTTP 实现,比 net/http 快 10 倍.
- fortio: 负载测试库和命令行工具、高级回显服务器和 Web UI.允许指定每秒查询的一组负载,并记录延迟、直方图和其他有用的统计信息并将它们绘制成图表。Tcp、Http、gRPC。
- ftp - 包 ftp: 实现 RFC 959 中所述的 FTP 客户端。
- ftpserverlib: 功能齐全的FTP服务器库.
- fullproxy: 功能齐全的可编写脚本和守护程序可配置的代理和透视工具包,具有SOCKS5,HTTP,原始端口和反向代理协议.
- gaio: proactor 模式下 Golang 的高性能异步 io 网络.
- gev - gev: 是一个基于 Reactor 模式的轻量级、快速、非阻塞的 TCP 网络库.
- GLDAP - GLDAP: 提供 LDAP 服务器实现,您为其 LDAP 操作提供处理程序。
- gmqtt: Gmqtt 是一个灵活、高性能的 MQTT 代理库,完全实现了 MQTT 协议 V3.1.1.
- gnet: 是一个用纯 Go 编写的高性能、轻量级、非阻塞、事件驱动的网络框架.gnet
- gnet: 是一个高性能的网络框架,特别适用于游戏服务器。gnet
- gNxI: 使用 gNMI 和 gNOI 协议的网络管理工具集合。
- go-getter: 用于使用 URL 从各种来源下载文件或目录的 Go 库.
- go-powerdns: Golang 的 PowerDNS API 绑定.
- go-sse: HTML 服务器发送事件的 Go 客户端和服务器实现.
- go-stun: STUN 客户端的 Go 实现(RFC 3489 和 RFC 5389).
- gobgp: 用 Go 编程语言实现的 BGP。
- golibwireshark: 软件包 golibwireshark 使用 libwireshark 库解码 pcap 文件并分析解剖数据.
- gopacket: 使用 libpcap 绑定进行数据包处理的 Go 库。
- gopcap - libpcap: 的 Go 包装器.
- goshark: 打包 goshark 使用 tshark 解码 IP 数据包并创建数据结构来分析数据包.
- gosnmp: 用于执行SNMP操作的本机Go库.
- gotcp: 用于快速编写 tcp 应用程序的 Go 包。
- grab: 用于管理文件下载的 Go 包。
- graval: 实验性的FTP服务器框架.
- gws: 支持AsyncIO的高性能WebSocket服务器和客户端.
- HTTPLab -HTTPLabs: 允许您检查HTTP请求并伪造响应.
- httpproxy: HTTP 代理处理程序和拨号器。
- iplib: 用于处理IP地址的库(net.IP,净。IPNet),灵感来自 python ipaddress 和 ruby ipaddr
- jazigo - Jazigo: 是一个用 Go 编写的工具,用于检索多个网络设备的配置.
- kcp-go: KCP - 快速可靠的 ARQ 协议。
- kcptun: 基于KCP协议的极其简单和快速的udp隧道.
- lhttp: 强大的 websocket 框架,更轻松地构建您的 IM 服务器.
- linkio: 读取器/写入器接口的网络链接速度模拟.
- llb: 这是一个非常简单但快速的代理服务器后端。可用于快速重定向到预定义域,无需内存分配和快速响应。
- mdns: Golang 中的简单 mDNS(多播 DNS)客户端/服务器库.
- mqttPaho: Paho Go 客户端提供了一个 MQTT 客户端库,用于通过 TCP、TLS 或 WebSockets 连接到 MQTT 代理。
- nbio: Pure Go 1000k+ 连接方案,支持 tls/http1.x/websocket,基本兼容 net/http,具有高性能、低内存成本、无阻塞、事件驱动、易用等特点。
- netpoll: 由字节跳动开发的高性能非阻塞 I/O 网络框架,专注于 RPC 场景.
- NFF-Go: 用于快速开发云和裸机(前身为YANFF)的高性能网络功能的框架.
- packet: 通过 TCP 和 UDP 发送数据包。如果需要,它可以缓冲消息和热插拔连接。
- panoptes-stream: 云原生分布式流网络遥测(gNMI、Juniper JTI 和 Cisco MDT)。
- peerdiscovery: 使用UDP多播进行跨平台本地对等发现的Pure Go库.
- portproxy: 简单的 TCP 代理,它为不支持它的 API 添加了 CORS 支持。
- publicip - 包 publicip: 返回面向公众的 IPv4 地址(互联网出口)。
- quic-go: 纯 Go 中 QUIC 协议的实现.
- raw: 包 raw 允许在网络接口的设备驱动程序级别读取和写入数据。
- sftp: 软件包 sftp 实现 SSH 文件传输协议,如 https://filezilla-project.org/specs/draft-ietf-secsh-filexfer-02.txt 中所述。
- ssh: 用于构建 SSH 服务器的高级 API(包装 crypto/ssh)。
- sslb: 这是一个超级简单的负载均衡器,只是一个实现某种性能的小项目。
- stun: RFC 5389 STUN 协议的 Go 实现。
- tcp_server: 用于更快地构建 tcp 服务器的 Go 库.
- tcpack - tcpack: 是一种基于 TCP 的应用程序协议,用于在 go 程序中打包和解压缩字节流.
- tspool: TCP 库使用工作线程池来提高性能并保护服务器。
- utp: Go uTP 微传输协议实现。
- vssh: 用于通过SSH协议构建网络和服务器自动化的Go库.
- water: 简单的 TUN/TAP 库。
- webrtc: WebRTC API 的纯 Go 实现.
- winrm: 转到 WinRM 客户端以在 Windows 计算机上远程执行命令。
- xtcp: TCP服务器框架,具有同步全双工通信,正常关机和自定义协议.
编辑器插件
- Vim/Neovim 的 coc-go 语言服务器扩展 -: 此插件为 Vim/Neovim 添加了 gopls 功能。
- Go Doc: 一个 Visual Studio Code 扩展,用于在输出中显示定义并生成 go doc。
- JetBrains IDEs 的 Go 插件 - JetBrains IDE 的 Go 插件: .
- go-language-server: 将 VSCode go 扩展转换为支持 language-server-protocol 的语言服务器的包装器。
- go-mode: GNU/Emacs 的 Go 模式.
- go-plus: 用于 Atom 的 Go (Golang) 包,它添加了自动完成、格式化、语法检查、linting 和审查.
- gocode: Go 编程语言的自动完成守护程序.
- goimports-reviser: 用于导入的格式化工具。
- goprofiling: 此扩展向 VS Code 添加了对 Go 语言的基准分析支持。
- GoSublime: 文本编辑器 SublimeText 3 的 Golang 插件集合,提供代码完成和其他类似 IDE 的功能.
- gounit-vim: 用于根据函数或方法的签名生成 Go 测试的 Vim 插件.
- theia-go-extension: Theia IDE 的 Go 语言支持.
- vim-compiler-go: 用于在保存时突出显示语法错误的 Vim 插件.
- vim-go: Vim 的 Go 开发插件.
- vscode-go: Visual Studio Code (VS Code) 的扩展,提供对 Go 语言的支持.
- 监视: 在文件更改时以 acme win 的形式运行命令。
管道
- ordered-concurrently: Go 模块,该模块并发处理工作并按输入顺序返回通道中的输出。
- parapipe: FIFO Pipeline,它在每个阶段并行执行,同时保持消息和结果的顺序。
- pipeline: 具有扇入和扇出的管道的实现。
第三方API
- airtable: Airtable API 的 Go 客户端库.
- amazon-product-advertising-api: 亚马逊产品广告 API 的 Go 客户端库.
- anaconda: Twitter 1.1 API 的 Go 客户端库.
- appstore-sdk-go: 用于 AppStore Connect API 的非官方 Golang SDK.
- aws-sdk-go: 适用于 Go 编程语言的官方 AWS 开发工具包。
- bqwriter: 高级Go库,可在整个过程中将数据写入Google BigQuery.
- brewerydb: 用于访问 BreweryDB API 的 Go 库。
- cachet - Cachet: 的 Go 客户端库(开源状态页面系统)。
- circleci: 用于与 CircleCI 的 API 交互的 Go 客户端库.
- clarifai: 用于与 Clarifai API 接口的 Go 客户端库.
- codeship-go: 用于与 Codeship 的 API v2 交互的 Go 客户端库.
- coinpaprika-go: 用于与 Coinpaprika 的 API 交互的 Go 客户端库.
- device-check-go: 用于与 iOS DeviceCheck API v1 交互的 Go 客户端库。
- discordgo: Discord 聊天 API 的 Go 绑定.
- dusupay-sdk-go: 非官方的Dusupay支付网关API客户端
- ethrpc: 以太坊 JSON RPC API 的 Go 绑定.
- facebook: 支持Facebook Graph API的Go库.
- fasapay-sdk-go: Golang 的非官方 Fasapay 支付网关 XML API 客户端.
- fcm: Firebase Cloud Messaging的Go库.
- gads: Google Adwords 非官方 API。
- gami: Asterisk Manager 界面的 Go 库.
- gcm: Google Cloud Messaging的Go库.
- geo-golang: 用于访问 Google Maps、MapQuest、Nominatim、OpenCage、Bing、Mapbox 和 OpenStreetMap 地理编码/反向地理编码 API 的 Go 库.
- github: 用于访问 GitHub REST API v3 的 Go 库。
- githubql: 用于访问 GitHub GraphQL API v4 的 Go 库。
- go-atlassian: 用于访问 Atlassian Cloud 服务(Jira、Jira Service Management、Jira Agile、Confluence、Admin Cloud)的 Go 库
- go-aws-news: 使用应用程序和库从 AWS 获取新功能。
- go-chronos: 用于与 Chronos Job Scheduler 交互的 Go 库
- go-hacknews: HackerNews API 的 Tiny Go 客户端.
- go-here: 围绕基于 HERE 位置的 API 的 Go 客户端库.
- go-hibp: 简单的 Go 绑定到“Have I Been Pwned” API.
- go-imgur: imgur 的 Go 客户端库
- go-jira: Atlassian JIRA 的 Go 客户端库
- go-lark: 一个简单易用的飞书和 Lark 开放平台非官方 SDK.
- go-marathon: 用于与 Mesosphere 的 Marathon PAAS 交互的 Go 库.
- go-myanimelist: 用于访问 MyAnimeList API 的 Go 客户端库。
- go-openai: OpenAI ChatGPT, DALL·E,Go 的 Whisper API 库。
- go-openproject: 用于与 OpenProject API 交互的 Go 客户端库。
- go-postman-collection: 使用 Postman Collections 的 Go 模块(与 Insomnia 兼容).
- go-redoc: 使用 ReDoc 的 Go 嵌入式 OpenAPI/Swagger 文档 ui.
- go-restcountries: REST 国家 API 的 Go 库.
- go-sophos: 零依赖项的 Sophos UTM REST API 的 Go 客户端库。
- go-sptrans: SPTrans Olho Vivo API 的 Go 客户端库.
- go-swagger-ui: 包含预编译的 Swagger UI 的 Go 库,用于提供 swagger json.
- go-telegraph -: 电报发布平台API客户端.
- go-trending: 用于访问 Github 上的趋势存储库和开发人员的 Go 库.
- go-twitter: Twitter v1.1 API 的 Go 客户端库.
- go-unsplash: Unsplash.com API 的 Go 客户端库。
- go-xkcd: xkcd API 的 Go 客户端。
- go-yapla - Yapla: v2.0 API 的 Go 客户端库.
- goagi: 用于构建 Asterisk PBX agi/fastagi 应用程序的 Go 库.
- goami2: Asterisk PBX 的 AMI v2 库。
- GoFreeDB: Golang 库在 Google 表格之上提供常见且简单的数据库抽象.
- gogtrends: Google趋势非官方API.
- golang-tmdb: 电影数据库 API v3 的 Golang 包装器.
- golyrics - Golyrics: 是一个 Go 库,用于从 Wikia 网站获取音乐歌词数据.
- gomalshare: Go 库 MalShare API malshare.com
- GoMusicBrainz - Go MusicBrainz: WS2 客户端库.
- google: 自动生成的Go Google API.
- google-analytics: 简单的包装器,便于Google Analytics(分析)报告.
- google-cloud: Google Cloud API Go 客户端库.
- google-email-audit-api: Google G Suite 电子邮件审核 API 的 Go 客户端库.
- google-play-scraper: 从 Google Play 商店获取数据.
- gopaapi5: 亚马逊产品广告 API 5.0 的 Go 客户端库。
- gosip: SharePoint的客户端库.
- gostorm: GoStorm 是一个 Go 库,它实现了在 Go 中编写与 Storm shell 通信的 Storm Spout 和 Bolt 所需的通信协议.
- hipchat: 此项目为 Hipchat API 实现了一个 golang 客户端库。
- hipchat (xmpp): 一个通过 XMPP 与 HipChat 通信的 golang 包。
- igdb: Internet游戏数据库API的Go客户端.
- jokeapi-go: JokeAPI 的 Go 客户端.
- lark: 飞书/Lark 开放 API Go SDK,支持所有开放 API 和事件回调。
- lastpass-go: LastPass API 的 Go 客户端库.
- libgoffi: 用于本机 libffi 集成的库适配器工具箱
- Medium: Golang SDK for Medium 的 OAuth2 API.
- megos: 用于访问Apache Mesos集群的客户端库.
- minio-go: 用于 Amazon S3 兼容云存储的 Minio Go 库.
- mixpanel: Mixpanel 是一个库,用于跟踪事件并将 Mixpanel 配置文件更新从 go 应用程序发送到 Mixpanel.
- newsapi-go: NewsAPI 的 Go 客户端.
- openaigo: OpenAI GPT3/GPT3.5 ChatGPT API 客户端库,用于 Go.
- patreon-go: Patreon API 的 Go 库.
- PayPal: PayPal 支付 API 的包装器。
- playlyfe - Playlyfe: Rest API Go SDK.
- pushover - Pushover: API 的 Go 包装器.
- rawg-sdk-go: 用于 RAWG 视频游戏数据库 API 的 Go 库
- rrdaclient: 用于访问 statdns.com API 的 Go 库,而 API 又是 RRDA API。通过 HTTP 的 DNS 查询。
- shopify: Go Library 向 Shopify API 发出 CRUD 请求。
- simples3: 简单而简洁的 AWS S3 库,使用 REST 和用 Go 编写的 V4 签名.
- slack: Go 中的 Slack API.
- smite: 用于包装对 Smite 游戏 API 的访问的 Go 包.
- spotify: Go Library 访问 Spotify WEB API。
- steam - 与 Steam: 游戏服务器交互的 Go 库。
- stripe: Stripe API 的 Go 客户端。
- swag: 没有评论,简单的 go 包装器来创建 swagger 2.0 兼容的 API.支持大多数路由框架,如内置、gin、chi、mux、echo、httprouter、fasthttp等。
- textbelt: textbelt.com txt 消息传递 API 的 Go 客户端。
- translate: 在线翻译包。
- Trello: Trello API 的 Go 包装器.
- TripAdvisor: TripAdvisor API 的包装器.
- tumblr - Tumblr: v2 API 的 Go 包装器.
- twitter-scraper: 在没有身份验证和限制的情况下抓取 Twitter 前端 API.
- uptimerobot: Uptime Robot v2 API的Go包装器和命令行客户端.
- vl-go: 围绕 VerifID 身份验证层 API 的 Go 客户端库.
- webhooks: GitHub和Bitbucket的Webhook接收器.
- wit-go: 用于 wit.ai HTTP API 的 Go 客户端.
- ynab: YNAB API 的 Go 包装器。
- zooz - Zooz: API 的 Go 客户端.
科学与数据分析
- assocentity: 包 assocentity 返回从单词到给定实体的平均距离。
- bradleyterry: 提供用于成对比较的 Bradley-Terry 模型.
- calendarheatmap: 受 Github 贡献活动启发的纯 Go 日历热图.
- chart: Go 的简单图表绘图库。支持多种图形类型。
- dataframe-go: 用于机器学习和统计的数据帧(类似于 pandas).
- decimal: 包 decimal 实现任意精度的十进制浮点运算。
- evaler: 简单的浮点算术表达式计算器.
- ewma: 指数加权移动平均线。
- geom: golang 的 2D 几何图形。
- go-dsp: Go 的数字信号处理。
- go-estimate: Go 中的状态估计和过滤算法.
- go-gt -: 用“Go”语言编写的图论算法.
- godesim: 扩展/多变量 ODE 求解器框架,用于使用简单的 API 进行基于事件的仿真.
- goent: GO 熵度量的实现。
- gograph: 一个提供数学图论和算法的 golang 通用图库.
- gohistogram: 数据流的近似直方图。
- gonum - Gonum: 是一组用于 Go 编程语言的数字库.它包含矩阵、统计、优化等库。
- gonum/: plot - gonum/plot 提供了一个用于在 Go 中构建和绘制绘图的 API.
- goraph: 纯 Go 图论库(数据结构、算法可视化).
- gosl: 用于线性代数、FFT、几何、NURBS、数值方法、概率、优化、微分方程等的 Go 科学库.
- GoStats - GoStats: 是一个开源的 GoLang 数学统计库,主要用于机器学习领域,它涵盖了大多数统计度量函数.
- graph: 基本图形算法库.
- jsonl-graph: 具有图形可视化支持的操作JSONL图形的工具.
- ode: 常微分方程(ODE)求解器,支持扩展状态和基于通道的迭代停止条件.
- orb: 支持裁剪、GeoJSON 和 Mapbox 矢量图块的 2D 几何类型。
- pagerank: 在 Go 中实现的加权 PageRank 算法。
- piecewiselinear: 微小的线性插值库.
- PiHex: 十六进制数 Pi 的“Bailey-Borwein-Plouffe”算法的实现。
- rootfinding: 用于查找二次函数根的寻根算法库.
- sparse: 用于线性代数的 Go 稀疏矩阵格式,支持科学和机器学习应用程序,与 gonum 矩阵库兼容.
- stats: Golang 标准库中缺少常用函数的统计包.
- streamtools: 通用的图形工具,用于处理数据流.
- TextRank: Golang 中的 TextRank 实现,具有可扩展的功能(摘要、加权、短语提取)和多线程 (goroutine) 支持.
- triangolatte: 2D三角测量库.允许将线和多边形(均基于点)转换为 GPU 的语言。
硬件
电子邮件
- chasquid: 用 Go 编写的 SMTP 服务器。
- douceur: 用于 HTML 电子邮件的 CSS 内联.
- email: 一个强大而灵活的 Go 电子邮件库。
- email-verifier: 一个用于电子邮件验证的 Go 库,无需发送任何电子邮件.
- go-dkim -: DKIM库,用于签名和验证电子邮件.
- go-email-normalizer: 用于提供电子邮件地址规范表示的 Golang 库.
- go-email-validator: 用于语法、一次性、SMTP 等的模块化电子邮件验证器…检查。
- go-IMAP: 客户端和服务器的 IMAP 库.
- go-mail: 一个简单的 Go 库,用于在 Go 中发送邮件。
- go-message: Internet消息格式和邮件消息的流库.
- go-premailer: Go 中 HTML 邮件的内联样式.
- go-simple-mail: 非常简单的软件包,用于使用 SMTP 保持活动和两个超时发送电子邮件:连接和发送.
- Hectane: 提供HTTP API的轻量级SMTP客户端.
- hermes: Golang 包,可生成干净、响应迅速的 HTML 电子邮件.
- mailchain: 将加密电子邮件发送到用 Go 编写的区块链地址。
- mailgun-go: 使用 Mailgun API 发送邮件的 Go 库.
- MailHog: 使用Web和API界面进行电子邮件和SMTP测试.
- Mailpit: 面向开发人员的电子邮件和SMTP测试工具.
- mailx - Mailx: 是一个库,可以更轻松地通过 SMTP 发送电子邮件.它是 golang 标准库的增强版。net/smtp
- SendGrid - SendGrid: 用于发送电子邮件的 Go 库.
- smtp: SMTP 服务器协议状态机。
- smtpmock: 轻量级可配置的多线程假SMTP服务器.模拟测试环境的任何 SMTP 行为。
- truemail-go: 可配置的 Golang 电子邮件验证器/验证器.通过正则表达式、DNS、SMTP 等验证电子邮件。
生成工具
- generic: Go 的灵活数据类型。
- genny: Go 的优雅泛型.
- gocontracts: 通过将代码与文档同步,将按合同设计引入 Go.
- godal: 通过指定 sql ddl 文件生成 golang 对应的 orm 模型,gorm 可以使用该文件。
- gonerics: Go 中的惯用泛型.
- gotests: 从源代码生成 Go 测试.
- gounit: 使用您自己的模板生成 Go 测试.
- hasgo: 为您的切片生成受 Haskell 启发的函数.
- options-gen: Dave Cheney 的帖子“友好 API 的功能选项”中描述的功能选项.
- re2dfa: 将正则表达式转换为有限状态机并输出 Go 源代码.
- sqlgen: 从 SQL 文件或 DSN 生成 gorm、xorm、sqlx、bun、sql 代码。
- TOML-to-Go: 立即在浏览器中将 TOML 转换为 Go 类型。
- xgen: XSD(XML 模式定义)解析器和 Go/C/Java/Rust/TypeScript 代码生成器.
物联网
- connectordb: 用于量化自我和物联网的开源平台.
- devices: 用于物联网设备的库套件,用于x/exp/io的实验性.
- ekuiper: 用于物联网边缘的轻量级数据流处理引擎.
- eywa - Project Eywa: 本质上是一个连接管理器,用于跟踪连接的设备.
- flogo -Project Flogo: 是用于IoT Edge应用和集成的开源框架.
- gatt - Gatt: 是用于构建低功耗蓝牙外围设备的 Go 包.
- gobot - Gobot: 是机器人、物理计算和物联网的框架.
- huego: 用于Go的广泛的飞利浦Hue客户端库.
- iot: IoT 是用于实现 Google IoT Core 设备的简单框架。
- mainflux: 工业物联网消息传递和设备管理服务器.
- periph: 外设 I/O,用于与低级板设施连接。
- sensorbee: 用于物联网的轻量级流处理引擎.
版本控制
- cli: 一个开源的 GitLab 命令行工具,将 GitLab 的酷炫功能带到您的命令行.
- froggit-go: Froggit-Go 是一个 Go 库,允许对 VCS 提供程序执行操作.
- gh: GitHub Webhooks的可编写脚本的服务器和net/http中间件.
- git2go: libgit2 的 Go 绑定。
- githooks: 具有版本控制和自动更新的 Per-repo 和共享 Git 钩子.
- go-git: 纯 Go 中高度可扩展的 Git 实现.
- go-vcs: 在 Go 中操作和检查 VCS 存储库。
- hercules: 从 Git 存储库历史记录中获取高级见解。
- hgo - Hgo: 是 Go 包的集合,提供对本地 Mercurial 存储库的读取访问.
游戏开发
- Azul3D: 用 Go 编写的 3D 游戏引擎.
- Ebitengine: Go 中非常简单的 2D 游戏引擎。
- engo - Engo: 是一个用 Go 编写的开源 2D 游戏引擎.它遵循实体-组件-系统范式。
- fantasyname: 幻想名称生成器.
- g3n: Go 3D 游戏引擎.
- go-astar: A* 路径查找算法的 Go 实现.
- go-sdl2: 简单 DirectMedia 层的 Go 绑定。
- go3d: 面向性能的 Go 2D/3D 数学包.
- gonet: 使用golang实现的游戏服务器骨架.
- goworld: 可扩展的游戏服务器引擎,具有空间实体框架和热插拔功能.
- Harfang3D: Go 语言的 3D 引擎,适用于 Windows 和 Linux(Go.dev 上的 Harfang).
- Leaf: 轻量级游戏服务器框架.
- nano: 基于轻量级、设施、高性能的 golang 游戏服务器框架.
- Oak: Pure Go 游戏引擎。
- Pitaya: 可扩展的游戏服务器框架,通过 C SDK 为 iOS、Android、Unity 等提供集群支持和客户端库.
- Pixel: 围棋中手工制作的 2D 游戏库。
- prototype: 跨平台(Windows / Linux / Mac)库,用于使用最小的API创建桌面游戏.
- raylib-go: raylib 的 Go 绑定,raylib 是一个简单易用的库,用于学习视频游戏编程.
- termloop: 基于终端的Go游戏引擎,建立在Termbox之上.
- tile: 面向数据且缓存友好的 2D 网格库 (TileMap),包括寻路、观察者和导入/导出.
消息传递系统
- ami: 将客户端转到基于 Redis 集群流的可靠队列。
- amqp: Go RabbitMQ 客户端库。
- APNs2: 适用于 Go 的 HTTP/2 Apple 推送通知提供程序 — 向 iOS、tvOS、Safari 和 OSX 应用程序发送推送通知。
- Asynq: 基于 Redis 构建的简单、可靠且高效的 Go 分布式任务队列.
- Beaver: 一个实时消息传递服务器,用于在 Web 和移动应用程序中构建可扩展的应用内通知、多人游戏、聊天应用程序。
- Benthos: 一系列协议之间的消息流桥。
- Bus: 用于内部通信的极简消息总线实现.
- Centrifugo: Go 中的实时消息传递(Websockets 或 SockJS)服务器.
- Chanify: 推送通知服务器向您的 iOS 设备发送消息。
- Commander: 支持各种“方言”(如 Apache Kafka)的高级事件驱动的消费者/生产者。
- Golang 客户端,适用于 Apache Kafka 和 Confluent: Confluent Kafka Golang 客户端 - confluent-kafka-go 是 Confluent 的 Platform。
- dbus: D-Bus 的原生 Go 绑定.
- drone-line: 使用二进制文件、docker 或 Drone CI 发送线路通知.
- emitter: 使用 Go 方式发出事件,具有通配符、谓词、取消可能性和许多其他良好的胜利。
- event: 模式观察器的实现。
- EventBus: 具有异步兼容性的轻量级事件总线。
- gaurun-client: 用 Go 编写的 Gaurun 客户端.
- Glue: 健壮的 Go 和 Javascript 套接字库(替代 Socket.io).
- go-eventbus: Go 的简单事件总线包。
- go-mq: 具有声明性配置的 RabbitMQ 客户端.
- go-notify: freedesktop 通知规范的原生实现.
- go-nsq: NSQ 的官方 Go 包。
- go-res: 用于构建REST/实时服务的软件包,其中客户端使用NATS和Resgate无缝同步.
- go-socket.io: socket.io Golang 库,一个实时应用程序框架.
- go-vitotrol -: Viessmann Vitotrol Web服务的客户端库.
- 咕噜: 一个 n:m 多路复用器,它从不同来源收集消息并将它们广播到一组目的地.
- golongpoll: HTTP longpoll 服务器库,使 web pub-sub 变得简单.
- gopush-cluster: gopush-cluster 是一个 go push 服务器集群.
- gorush: 使用 APNs2 和 google GCM 的推送通知服务器.
- gosd: 用于调度何时将消息发送到通道的库。
- guble: 使用推送通知(Google Firebase Cloud Messaging,Apple Push Notification services,SMS)以及websockets(REST API)的消息传递服务器,具有分布式操作和消息持久性.
- hare: 用于发送消息和监听TCP套接字的用户友好库.
- hub: Go 应用程序的消息/事件中心,使用发布/订阅模式,支持 rabbitMQ 交换等别名.
- jazz: 一个简单的RabbitMQ抽象层,用于队列管理以及消息的发布和使用.
- machinery: 基于分布式消息传递的异步任务队列/作业队列。
- mangos: 具有传输互操作性的Nanomsg(“可扩展性协议”)的纯go实现.
- melody: 用于处理 websocket 会话的极简框架,包括广播和自动 ping/pong 处理.
- Mercure - 使用 Mercure: 协议(建立在服务器发送事件之上)调度服务器发送更新的服务器和库.
- messagebus - messagebus: 是一个 Go 简单的异步消息总线,非常适合在执行事件溯源、CQRS、DDD 时用作事件总线.
- NATS Go Client: 轻量级和高性能的发布-订阅和分布式队列消息传递系统 - 这是 Go 库。
- nsq-event-bus: 围绕 NSQ 主题和通道的微型包装器.
- oplog: REST API的通用oplog/复制系统.
- pubsub: 用于 go 的简单 pubsub 包。
- Quamina: 用于过滤消息和事件的快速模式匹配.
- rabbus: amqp 交换和队列的微小包装器.
- rabtap: RabbitMQ 瑞士军刀 cli 应用程序.
- RapidMQ: RapidMQ 是一个轻量级且可靠的库,用于管理本地消息队列.
- Ratus: Ratus 是一个 RESTful 异步任务队列服务器.
- redisqueue: redisqueue 提供使用 Redis 流的队列的创建者和使用者。
- rmqconn: RabbitMQ 重新连接。amqp 上的包装器。Connection 和 amqp.Dial. 允许在连接断开时执行重新连接,然后强制关闭对 Close () 方法的调用。
- sarama: Apache Kafka 的 Go 库.
- Uniqush-Push: Redis 支持的统一推送服务,用于向移动设备发送服务器端通知。
- Watermill: 高效处理消息流。构建事件驱动的应用程序,启用事件溯源,RPC over messages,传奇。可以使用传统的发布/订阅实现,如 Kafka 或 RabbitMQ,也可以使用 HTTP 或 MySQL 二进制日志。
- zmq4: ZeroMQ 版本 4 的 Go 接口。也可用于版本 3 和版本 2。
测试 - 注入失败
- failpoint: Golang 的失败点实现.
测试 - 模拟
- counterfeiter: 用于生成独立模拟对象的工具。
- genmock: 带有代码生成器的模拟系统,用于构建接口方法的调用.
- go-localstack: 用于在 AWS 测试中使用 localstack 的工具。
- go-sqlmock -: 用于测试数据库交互的模拟SQL驱动程序.
- go-txdb -: 基于单事务的数据库驱动程序,主要用于测试目的.
- gock: 多功能的 HTTP 模拟变得容易.
- gomock: Go 编程语言的模拟框架.
- govcr: Golang 的 HTTP 模拟:记录和重放 HTTP 交互以进行离线测试.
- hoverfly: HTTP(S)代理,用于记录和模拟具有可扩展中间件和易于使用的CLI的REST / SOAP API.
- httpmock: 轻松模拟来自外部资源的 HTTP 响应。
- minimock: Go 接口的模拟生成器.
- mockery: 生成 Go 接口的工具.
- mockhttp: Go http 的模拟对象.响应编写器。
- mockit: 允许函数和方法轻松模拟,无需定义新类型;它类似于 Java 的 Mockito。
- monkey: 一行可以模拟函数/方法/变量,而无需依赖注入或代码生成。
- mooncake: 一种为多种目的生成模拟的简单方法
- timex: 本机包的测试友好替代品。time
测试 - 框架
- apitest: 基于REST的服务或HTTP处理程序的简单且可扩展的行为测试库,支持模拟外部http调用和序列图的呈现.
- assert: 与原生 Go 测试一起使用的基本断言库,带有用于自定义断言的构建块.
- badio: Go 包的扩展。testing/iotest
- baloo: 富有表现力且多功能的端到端 HTTP API 测试变得简单.
- be: 极简的通用测试断言库。
- biff: 分叉测试框架,兼容 BDD。
- charlatan: 为测试生成虚假接口实现的工具.
- commander: 用于在 windows、linux 和 osx 上测试 cli 应用程序的工具。
- covergates: 自托管代码覆盖率报告审查和管理服务.
- cupaloy: 用于测试框架的简单快照测试插件.
- dbcleaner: 用于测试目的的清理数据库,灵感来自 Ruby.database_cleaner
- dsunit: SQL,NoSQL,结构化文件的数据存储测试.
- embedded-postgres: 在 Linux、OSX 或 Windows 上本地运行真正的 Postgres 数据库,作为另一个 Go 应用程序或测试的一部分.
- endly: 声明式端到端功能测试.
- fixenv: 夹具管理引擎,灵感来自 pytest 夹具.
- fluentassert: 可扩展、类型安全、流畅的断言 Go 库.
- flute: HTTP客户端测试框架.
- frisby: REST API测试框架.
- gherkingen: BDD 样板生成器和框架.
- ginkgo: Go 的 BDD 测试框架.
- gnomock: 在 Docker 中运行的真实依赖项(数据库、缓存,甚至 Kubernetes 或 AWS)的集成测试,无需模拟.
- go-carpet: 用于在终端中查看测试覆盖率的工具。
- go-cmp: 用于比较测试中 Go 值的包。
- go-hit: Hit 是一个用 golang 编写的 http 集成测试框架.
- go-mutesting: Go 源代码的突变测试.
- go-mysql-test-container: Golang MySQL testcontainer,用于帮助进行 MySQL 集成测试.
- go-snaps: Golang 中类似 Jest 的快照测试.
- go-testdeep: 极其灵活的 golang 深度比较,扩展了 go 测试包.
- go-testpredicate: 具有大量诊断输出的测试谓词样式断言库.
- go-vcr: 记录和回放您的HTTP交互,以实现快速,确定性和准确的测试.
- goblin: 类似 Mocha 的 Go 测试框架。
- goc - Goc: 是 Go 编程语言的综合覆盖测试系统.
- gocheck: gotest 的更高级测试框架的替代品.
- GoConvey: 具有 Web UI 和实时重载的 BDD 风格框架.
- gocrest: 用于 Go 断言的可组合的类似 hamcrest 的匹配器.
- godog: Go 的 Cucumber BDD 框架.
- gofight: Golang Router 框架的 API 处理程序测试.
- gogiven: 用于 Go 的类似 YATSPEC 的 BDD 测试框架.
- gomatch: 为针对模式测试 JSON 而创建的库。
- gomega: 类似 Rspec 的匹配器/断言库。
- Gont: Go 网络测试工具包,用于测试使用 Linux 命名空间构建复杂的网络拓扑.
- GoSpec: Go编程语言的BDD样式测试框架.
- gospecify: 这提供了一个 BDD 语法来测试你的 Go 代码。任何使用过 rspec 等库的人都应该熟悉它。
- gosuite: 通过利用 Go1.7 的子测试,引入带有设置/拆卸功能的轻量级测试套件.testing
- got: 一个令人愉快的 golang 测试框架.
- gotest.tools: 用于扩充 go testing 包并支持常见模式的包集合。
- Hamcrest: 声明性 Matcher 对象的流畅框架,当应用于输入值时,会产生自描述的结果。
- httpexpect: 简洁,声明性且易于使用的端到端HTTP和REST API测试.
- is: Go 的专业轻量级测试迷你框架。
- jsonassert: 用于验证 JSON 有效负载是否正确序列化的包。
- omg.testingtools: 用于更改用于测试的私有字段值的简单库。
- restit: Go 微框架来帮助编写 RESTful API 集成测试.
- schema: 快速轻松地对请求和响应中使用的 JSON 架构进行表达式匹配。
- stop-and-go: 并发测试帮助程序.
- testcase: 行为驱动开发的惯用测试框架.
- testcontainers-go: 一个 Go 包,可以轻松创建和清理基于容器的依赖项以进行自动集成/冒烟测试.简洁易用的 API 使开发人员能够以编程方式定义应作为测试的一部分运行的容器,并在测试完成后清理这些资源。
- testfixtures - Rails: 的助手,用于测试数据库应用程序的测试夹具.
- Testify: 标准 go 测试包的神圣扩展。
- testmd: 将 Markdown 片段转换为可测试的 go 代码.
- testsql: 在测试之前从 SQL 文件生成测试数据,并在完成后清除它。
- testza: 功能齐全的测试框架,具有漂亮的彩色输出.
- trial: 快速简便的可扩展断言,无需引入太多样板。
- Tt: 简单而丰富多彩的测试工具。
- wstest: 用于对Websocket http进行单元测试的Websocket客户端.处理器。
测试 - Selenium和浏览器控制工具
- cdp: Chrome 调试协议的类型安全绑定,可用于浏览器或其他实现该协议的调试目标。
- chromedp: 一种驱动/测试 Chrome、Safari、Edge、Android Webviews 和其他支持 Chrome 调试协议的浏览器的方法。
- ggr: 一个轻量级服务器,将 Selenium WebDriver 请求路由和代理到多个 Selenium 集线器。
- playwright-go: 浏览器自动化库,可通过单个API控制Chromium,Firefox和WebKit.
- rod: 一个 Devtools 驱动程序,可使 Web 自动化和抓取变得容易.
- selenoid: 在容器内启动浏览器的替代 Selenium 中心服务器。
流处理
- go-streams: Go 流处理库.
- goio: Golang 的 IO、Stream、Fiber 实现,灵感来自很棒的 Scala 库 cats 和 fs2.
- machine: 用于编写和生成具有内置指标和可追溯性的流工作线程的 Go 库.
- stream: Go Stream,就像 Java 8 Stream: Filter/Map/FlatMap/Peek/Sorted/ForEach/Reduce…
模板引擎
- ego: 轻量级模板语言,可让您在 Go 中编写模板.模板被翻译成 Go 并编译。
- extemplate: 围绕 html/template 的微型包装器,允许轻松进行基于文件的模板继承.
- fasttemplate: 简单快速的模板引擎.替换模板占位符的速度比文本/模板快 10 倍。
- gospin: 文章旋转和 spintax/spinning 语法引擎,可用于 A/B、测试文本/文章片段和创建更自然的对话.
- got: 受 Hero 和 Fasttemplate 启发的 Go 代码生成器.包含文件、自定义标签定义、注入的 Go 代码、语言翻译等。
- goview - Goview: 是一个基于 golang html/template 的轻量级、简约和惯用的模板库,用于构建 Go Web 应用程序.
- jet: Jet 模板引擎。
- liquid: Shopify Liquid 模板的 Go 实现。
- maroto: 一种创建 PDF 的 maroto 方式。 Maroto 的灵感来自 Bootstrap 并使用 gofpdf。快速而简单。
- pongo2: 类似 Django 的 Go 模板引擎.
- quicktemplate: 快速、强大且易于使用的模板引擎。将模板转换为 Go 代码,然后对其进行编译。
- raymond: Go 中的完整车把实现.
- Razor: Golang 的 Razor 视图引擎.
- Soy: Go 的闭包模板(又名 Soy 模板),遵循官方规范.
- sprig: Go 模板的有用模板函数。
- tbd: 一种使用占位符创建文本模板的非常简单的方法 - 公开额外的内置 Git 存储库元数据。
- templ: 一种具有出色开发人员工具的 HTML 模板语言.
树
标准CLI
- acmd: Go 中简单、有用且固执己见的 CLI 包.
- argparse: 受 Python 的 argparse 模块启发的命令行参数解析器.
- argv: 使用 bash 语法将命令行字符串拆分为参数数组的 Go 库.
- carapace: spf13/cobra 的命令参数完成生成器.
- carapace-bin: 多 shell 多命令参数完成器.
- carapace-spec: 使用规范文件定义简单的补全。
- cli: 基于 golang struct 标签的功能丰富且易于使用的命令行包.
- cli: 用于在 Go 中构建命令行界面的简单而完整的 API.
- climax: 具有“人脸”的替代 CLI,具有 Go 命令的精神.
- clîr: 一个简单明了的 CLI 库.无依赖。
- cmd: 扩展标准包以惯用方式支持子命令等。flag
- cmdr: POSIX/GNU 风格、类似 getopt 的命令行 UI Go 库。
- cobra: 现代Go CLI交互的指挥官.
- command-chain: 用于配置和运行命令链的 go 库 - 例如 unix shell 中的流水线.
- commandeer: 开发人员友好的 CLI 应用程序:根据结构字段和标记设置标志、默认值和用法。
- complete: 在 Go + Go 命令 bash completion 中写入 bash 完成。
- Dnote: 具有多设备同步功能的简单命令行笔记本。
- elvish: 一种富有表现力的编程语言和多功能的交互式外壳.
- env: 结构体的基于标签的环境配置。
- flag: 简单但功能强大的命令行选项解析库,用于 Go 支持子命令。
- flaggy: 一个健壮且惯用的标志包,具有出色的子命令支持.
- flagvar: Go 标准包的标志参数类型的集合。flag
- go-andotp: 用于加密/解密和 OTP 文件的 CLI 程序.也可以用作库。
- go-arg: Go 中基于结构的参数解析.
- go-commander: 用于简化 CLI 工作流程的 Go 库。
- go-flags: go 命令行选项解析器.
- go-getoptions: 受 Perl 的 GetOpt::Long 灵活性启发的 Go 选项解析器.
- gocmd: 用于构建命令行应用程序的 Go 库.
- Hiboot: CLI -具有自动配置和依赖注入功能的CLI应用程序框架.
- job: JOB,让你的短期命令成为长期工作。
- kingpin: 支持子命令的命令行和标志解析器(被取代;见下文).kong
- liner: 用于命令行界面的类似 readline 的库.
- mcli: 一个最小但非常强大的 Go cli 库。
- mitchellh/cli: 用于实现命令行界面的 Go 库.
- mow.cli: 用于构建具有复杂标志和参数解析和验证的 CLI 应用程序的 Go 库.
- ops: Unikernel Builder/Orchestrator.
- pflag: Go 标志包的直接替代品,实现 POSIX/GNU 风格的 --flags。
- 阅读线: 具有现代且易于使用的 UI 功能的 Shell 库。
- sand: 用于创建解释器的简单 API 等等。
- sflags: 基于结构的标志生成器,用于 flag、urfave/cli、pflag、cobra、kingpin 和其他库。
- strumt: 用于创建提示链的库。
- subcmd: 解析和运行子命令的另一种方法.与标准包装一起使用。flag
- survey: 构建交互式和可访问的提示,完全支持 Windows 和 posix 终端.
- ts: 时间戳转换和比较工具。
- ukautz/clif: 小型命令行界面框架.
- urfave/cli: 简单、快速、有趣的包,用于在 Go 中构建命令行应用程序(以前称为 codegangsta/cli).
- version: 以多种格式收集和显示 CLI 版本信息以及升级通知。
- wlog: 简单的日志记录接口,支持跨平台的颜色和并发性.
- wmenu: 易于使用的菜单结构,用于提示用户做出选择的CLI应用程序.
查询语言
- api-fu -: 全面的GraphQL实现.
- dasel: 使用命令行中的选择器查询和更新数据结构.与 jq/yq 相当,但支持 JSON、YAML、TOML 和 XML,运行时依赖性为零。
- gojsonq: 一个简单的 Go 包,用于查询 JSON 数据.
- goven: 适用于任何数据库模式的插入式查询语言.
- gqlgen: 基于Go生成GraphQL服务器库.
- grapher: 一个 GraphQL 字段构建器,利用具有额外实用程序和功能的 Go 泛型.
- graphql - graphql: 解析器 + 实用程序.
- graphql: 专注于易用性的 GraphQL 服务器.
- graphql-go: Go 的 GraphQL 实现.
- gws: Apollos的“GraphQL over Websocket”客户端和服务器实现.
- jsonpath: 用于基于JSONPath语法检索部分JSON的查询库.
- jsonql: Golang 中的 JSON 查询表达式库.
- jsonslice: 使用高级过滤器的Jsonpath查询.
- mql: 模型查询语言 (mql) 是数据库模型的查询语言。
- rql: REST API 的资源查询语言。
- rqp: REST API的查询解析器.筛选、验证、操作在查询中直接受支持。ANDOR
- straf: 轻松将 Golang 结构转换为 GraphQL 对象.
构建项目
- ardanlabs/service: 用于构建生产级可扩展Web服务应用程序的入门套件.
- cookiecutter-golang: 一个 Go 应用程序样板模板,用于按照生产最佳实践快速启动项目.
- go-module: 用 Go 编写的典型模块的模板.
- go-sample: 带有真实代码的 Go 应用程序项目的示例布局.
- go-starter: 一个自以为是的生产就绪型 RESTful JSON 后端模板,与 VSCode DevContainers 高度集成.
- go-todo-backend: 使用产品微服务的模块化项目布局的 Go Todo 后端示例.
- gobase: golang 应用程序的简单骨架,具有真实 golang 应用程序的基本设置。
- golang-standards/project-layout: Go 生态系统中常见的历史和新兴项目布局模式集.注意:尽管组织名称如此,但它们并不代表官方的 golang 标准,请参阅此问题以获取更多信息。尽管如此,有些人可能会发现布局很有用。
- golang-templates/seed: Go 应用程序 GitHub 存储库模板.
- insidieux/inizio: 带有插件的 Golang 项目布局生成器.
- modern-go-application: 应用现代实践的 Go 应用程序样板和示例.
- nunu: Nunu 是用于构建 Go 应用程序的脚手架工具.
- pagoda: 用 Go 内置的快速、简单的全栈 Web 开发入门套件.
- scaffold: 脚手架生成一个入门级 Go 项目布局。让您专注于实现的业务逻辑。
- wangyoucao577/go-project-layout: 关于如何构建 Go 项目布局的一组实践和讨论.
构建自动化
- 1build: 命令行工具,用于顺畅地管理特定于项目的命令。
- anko: 多种编程语言的简单应用程序观察器.
- gaper: 当 Go 项目崩溃或某些监视文件更改时,构建并重新启动它。
- gilbert: 为 Go 项目构建系统和任务运行器.
- goyek: 在 Go 中创建构建管道.
- mage - Mage: 是一个使用 Go 的类似 make/rake 的构建工具.
- mmake: 现代制造。
- 实现: 去构建一个带有文件观察器的系统并实时重新加载.使用自定义路径运行、生成和监视文件更改。
- 任务: 简单的“制作”替代方案。
- taskctl: 并发任务运行程序。
- xc: 具有 README.md 定义任务的任务运行器,可执行 markdown.
机器学习
- bayesian: Golang 的朴素贝叶斯分类.
- CloudForest: 用于纯 Go 机器学习的快速、灵活、多线程决策树集成.
- ddt: 动态决策树,创建定义可自定义规则的树。
- eaopt: 进化优化库.
- evoli: 遗传算法和粒子群优化库.
- fonet: 用 Go 编写的深度神经网络库.
- go-cluster: k 模式和 k-prototypes 聚类算法的 Go 实现.
- go-deep: Go 中功能丰富的神经网络库.
- go-fann: 快速人工神经网络 (FANN) 库的 Go 绑定.
- go-featureprocessing: 在 Go 中快速方便地进行低延迟机器学习的特征处理.
- go-galib: 用 Go / golang 编写的遗传算法库.
- go-pr: Go 语言中的模式识别包。
- gobrain: 用 go 编写的神经网络.
- godist: 各种概率分布和相关方法。
- goga: Go 的遗传算法库.
- GoLearn: Go 的通用机器学习库.
- golinear: Go 的 liblinear 绑定.
- GoMind: Go 中一个简单的神经网络库.
- goml: Go 中的在线机器学习.
- gonet: Go的神经网络.
- Goptuna: 用 Go 编写的黑盒函数的贝叶斯优化框架.一切都将得到优化。
- goRecommend: 用 Go 编写的推荐算法库。
- gorgonia: 基于图形的计算库,如 Theano for Go,为构建各种机器学习和神经网络算法提供基元.
- gorse: 基于 Go 编写的协作过滤的离线推荐系统后端.
- goscore: PMML 的 Go 评分 API.
- gosseract: 使用 Tesseract C++ 库进行 OCR(光学字符识别)的 Go 包。
- libsvm: 基于 LIBSVM 3.14 的 libsvm golang 版本衍生作品.
- m2cgen: 一种 CLI 工具,用于将经过训练的经典 ML 模型转换为零依赖的原生 Go 代码,用 Python 编写,支持 Go 语言.
- neat: 用于增强拓扑 (NEAT) 的 NeuroEvolution 的即插即用并行 Go 框架.
- neural-go: 用 Go 实现的多层感知器网络,通过反向传播进行训练.
- ocrserver: 一个简单的 OCR API 服务器,非常容易被 Docker 和 Heroku 部署.
- onnx-go: 开放神经网络交换(ONNX)的Go接口.
- probab: 概率分布函数。贝叶斯推理。用纯 Go 语言编写。
- randomforest: 易于使用的 Go 随机森林库.
- regommend: 推荐和协作过滤引擎.
- shield: 贝叶斯文本分类器,具有灵活的分词器和Go的存储后端.
- tfgo: 易于使用的 Tensorflow 绑定:简化了官方 Tensorflow Go 绑定的使用.在 Go 中定义计算图,加载和执行在 Python 中训练的模型。
- Varis: Golang神经网络.
机器人构建
- bot: 具有附加 UI 组件的零依赖 Telegram 机器人库
- echotron: Go 中用于 Telegram Bots 的优雅并发库.
- ephemeral-roles: 一个 Discord 机器人,用于根据语音频道成员的存在管理临时角色.
- go-chat-bot: 用 Go 编写的 IRC、Slack 和 Telegram 机器人.
- go-joe: 受 Hubot 启发但用 Go 编写的通用机器人库.
- go-sarah: 为所需的聊天服务(包括 LINE、Slack、Gitter 等)构建机器人的框架.
- go-tgbot: 纯 Golang Telegram Bot API 包装器,由 swagger 文件、基于会话的路由器和中间件生成.
- go-twitch-irc: 为 twitch.tv 聊天编写机器人的库
- Golang CryptoTrading Bot: 用于加密货币交易所的基于控制台的交易机器人的 golang 实现.
- govkbot: 简单的 Go VK 机器人库.
- hanu: 编写Slack机器人的框架.
- 海带: Stellar DEX 的官方交易和做市机器人。开箱即用,用 Golang 编写,与中心化交易所和自定义交易策略兼容。
- larry: Larry 🐦 是一个非常简单的 Twitter 机器人生成器,它从 Go 内置的 Github 中随机发布存储库.
- margelet: 用于构建 Telegram 机器人的框架.
- micha: 用于 Telegram 机器人 api 的 Go 库.
- olivia: 使用人工神经网络构建的聊天机器人.
- slack-bot: 为懒惰的开发人员准备使用 Slack Bot:自定义命令、Jenkins、Jira、Bitbucket、Github…
- slacker: 易于使用的框架来创建 Slack 机器人.
- slackscot: 构建Slack机器人的另一个框架.
- tbot: 具有类似于 net/http 的 API 的 Telegram 机器人服务器.
- telebot: Telegram 机器人框架是用 Go 编写的.
- telego: Golang 的 Telegram Bot API 库,具有完整的一对一 API 实现.
- telegram-bot-api: 简单干净的 Telegram 机器人客户端.
- teleterm: Telegram Bot Exec 终端命令.
- Tenyks: 面向服务的IRC机器人,使用Redis和JSON进行消息传递.
- wayback: Telegram、Mastodon、Slack 和其他消息传递平台的机器人存档网页.
未分类
- anagent: 具有依赖注入的简约、可插拔的 Golang evloop/计时器处理程序.
- antch: 快速,强大且可扩展的网络爬虫和抓取框架.
- archiver: 用于制作和提取 .zip 和 .tar.gz 存档的库和命令。
- autoflags: Go 包,用于从结构字段自动定义命令行标志。
- avgRating: 根据 Wilson 分数公式计算平均分数和评级。
- banner: 将漂亮的横幅添加到您的 Go 应用程序中。
- base64Captcha: Base64captch 支持数字、数字、字母、算术、音频和数字字母验证码.
- basexx: 在各种数字基的数字字符串之间进行转换。
- battery: 跨平台,规范化的电池信息库.
- bitio: 高度优化的 Go 位级读取器和写入器。
- browscap_go: 用于浏览器功能项目的 GoLang 库。
- captcha: 包验证码为验证码生成提供了一个易于使用、无主见的 API.
- common: 服务器框架的库。
- conv: 包 conv 提供跨 Go 类型的快速直观转换.
- datacounter: 读取器/写入器/http 的 Go 计数器。响应编写器。
- faker: 假数据生成器.
- faker: Go 的随机假数据和结构生成器.
- ffmt: 美化人类的数据显示。
- gatus: 自动化服务运行状况仪表板.
- go-commandbus: Go 的轻微且可插拔的命令总线.
- go-commons-pool: Golang 的通用对象池.
- go-openapi: 用于解析和利用open-api模式的包集合.
- go-resiliency: golang 的弹性模式.
- go-unarr: 用于 RAR、TAR、ZIP 和 7z 档案的解压缩库.
- gofakeit: 用 go 编写的随机数据生成器。
- gommit - 分析 git: 提交消息以确保它们遵循定义的模式.
- gopsutil: 用于检索进程和系统利用率(CPU,内存,磁盘等)的跨平台库.
- gosh: 提供 Go 统计处理程序、结构、度量方法。
- gosms: Go 中您自己的本地 SMS 网关,可用于发送 SMS。
- gotoprom: 官方 Prometheus 客户端的类型安全指标构建器包装库.
- gountries: 公开国家/地区和细分数据的包。
- gtree: 提供 CLI、Package 和 Web,用于从 Markdown 或以编程方式创建树输出和目录.
- health: 一个简单灵活的 Go 健康检查库。
- health: 易于使用、可扩展的运行状况检查库。
- healthcheck: RESTful服务的自以为是的并发运行状况检查HTTP处理程序.
- hostutils: 用于打包和解压缩 FQDN 列表的 golang 库。
- indigo: 使用Sonyflake并由Base58编码的分布式唯一ID生成器.
- lk: golang 的简单许可库.
- llvm: 用于在纯 Go 中与 LLVM IR 交互的库.
- metrics: 用于指标检测和Prometheus公开的库.
- morse: 与莫尔斯电码相互转换的库.
- numa: NUMA 是一个实用程序库,它是用 go 编写的.它帮助我们编写一些 NUMA-AWARED 代码。
- openapi: OpenAPI 3.x解析器.
- pdfgen: 从Json请求生成PDF的HTTP服务.
- 波斯语: go 中波斯语的一些实用程序。
- sandid: 地球上的每一粒沙子都有自己的 ID。
- shellwords: 一个 Golang 库,用于根据 UNIX Bourne shell 的单词解析规则操作字符串.
- shortid: 分布式生成超短,唯一,非序列,URL友好的ID.
- shoutrrr: 通知库,可轻松访问各种消息传递服务,如 slack、mattermost、gotify 和 smtp 等.
- sitemap-format: 一个简单的站点地图生成器,带有一点语法糖.
- stateless: 用于创建状态机的流畅库.
- stats: 监控 Go MemStats + 系统统计信息,例如内存、交换和 CPU,并通过 UDP 发送到您想要的任何地方进行日志记录等…
- turtle: Go 的表情符号。
- url-shortener: 支持 mysql 的现代、强大且强大的 URL 缩短器微服务.
- VarHandler: 生成样板 http 输入和输出处理。
- varint: 比标准库中提供的编码器/解码器更快的可变长度整数编码器/解码器。
- xdg: 在 Go 中实现的 FreeDesktop.org (xdg) 规范。
- xkg: X 键盘抓取卡。
- xz: 用于读取和写入 xz 压缩文件的纯 golang 包。
服务器应用程序
- algernon: HTTP/2 Web服务器,内置支持Lua,Markdown,GCSS和Amber.
- Caddy - Caddy: 是一种易于配置和使用的替代 HTTP/2 Web 服务器.
- consul: Consul 是一个用于服务发现、监控和配置的工具。
- cortex-tenant: Prometheus 远程写入代理,用于根据指标标签添加添加 Cortex 租户 ID 标头。
- devd: 面向开发人员的本地 Web 服务器。
- discovery: 用于弹性中间层负载平衡和故障转移的注册表。
- dudeldu: 一个简单的 SHOUTcast 服务器.
- dummy: 使用一个命令基于 API 合约运行模拟服务器.
- Easegress: 具有可观测性和可扩展性的云原生高可用性/性能流量编排系统.