6 万 Star! Go 语言资源大全(下)

2021年9月21日 273点热度 0人点赞 0条评论


接中篇

序列化

  • asn1 :Asn.1 BER 及DER 编码库
  • bambam :  从Go中生成Cap'n Proto模式。
  • bel :   从Go结构/接口生成TypeScript接口。对JSON RPC有用。
  • binstruct :  用于将数据映射到结构中的Golang 二进制解码器。
  • cbor :  小巧、安全、简单的CBOR 编码和解码库。
  • colfer :  用于生成Colfer二进制格式代码
  • csvutil :  高性能的CSV记录编码和解码器
  • elastic :  在动态转换不同类型的库
  • fixedwidth :   固定宽度的文本格式(支持UTF-8)。
  • fwencoder :  Go的固定宽度文件解析器(编码和解码库)
  • go-capnproto :   Go的Cap'n Proto编码器和解析器。
  • go-codec :  高性能、多功能、规范化编码解码以及rpc库, 用于msgpack, cborjson,支持基于运行时的 OR 码生成
  • go-lctree :   提供一个CLI和基元来序列化和反序列化LeetCode二进制树。 LeetCode binary trees :
  • gogoprotobuf :  用于Gadgets 的go协议缓冲区。
  • goprotobuf :   以库和协议编译器插件的形式为Google 的协议缓冲区提供 Go 支持。
  • jsoniter : 100%兼容的"encoding/json "的 高性能程序库。
  • mapstructure :  用于将通用map值解码为本地Go结构的Go库。
  • php_session_decoder :  用于处理PHP session 格式和PHP Serialize/Unserialize函数的 GoLang 库。
  • pletter :  为消息中介包装原消息的标准方法。
  • structomap :  用于从静态结构中轻松动态地生成映射的库。

服务端应用

  • algernon :HTTP/2 web服务器,内置Lua、Markdown、GCSSAmber支持。
  • Caddy :Caddy是一个备选的HTTP/2 web 服务器,配置简单,使用方便。
  • consul : Consul是一个用于服务发现、监控和配置的工具
  • devd :   开发者使用的本地web 服务器
  • discovery :  一个用于弹性中层负载均衡和故障转移的注册表。
  • dudeldu :   一个简单的SHOUTcast服务器。
  • etcd :  高可用性的键值存储,用于分享配置和服务发现
  • Fider : Fider是一个收集和整理客户反馈的开放平台。
  • Flagr : Flagr是一个开源的功能标志和A/B测试服务。
  • flipt :  用GoVue.js编写的自带功能标志的解决方案。
  • go-proxy-cache : 简单的反向代理与缓存,用Go编写,使用Redis
  • jackal :    用Go编写的XMPP服务器。
  • lets-proxy2 :  反向代理,用于处理https,在fly中使用lets-encrypt发行证书。
  • minio :  Minio 是一个分布式对象存储服务器
  • nginx-prometheus : -NginxPrometheus exporter  。
  • nsq :  一个实时的分布式消息平台
  • protoxy :  一个将JSON请求体转换为协议缓冲区的代理服务器。
  • psql-streamer : 从PostgreSQLKafka的数据库事件流。
  • riemann-relay :  - 负载平衡Riemann事件和/或将其转换为Carbon的中继。
  • RoadRunner :   高性能的PHP应用服务器,负载均衡器和进程管理器。
  • SFTPGo :   功能齐全、高度可配置的SFTP服务器,可选择支持FTP/S和WebDAV。它可以为本地文件系统和云存储后端服务,如S3和谷歌云存储。
  • simple-jwt-provider :   简单轻量级的provider,它展示了JWTs,支持登录、密码重置(通过邮件)和用户管理。
  • Trickster : HTTP反向代理缓存和时间序列加速器。

流处理

流式数据处理和响应式编程库

  • go-streams :Go流处理库。
  • machine : 内置度量和具有可跟踪的用于编写和生成流式workerGo 库
  • stream :Go Stream,像Java 8 Stream一样。支持Filter/Map/FlatMap/Peek/Sorted/ForEach/Reduce...等特性

模板引擎

模版渲染和模版生成处理库

  • ace :  Go 语言版本的 HTML 模板引擎,受到了SlimJade 的启发。Ace 是对Gold的一种改进。
  • amber :  Amber 是一个优雅的模板引擎,受到HAMLJade的启发
  • damsel : 通过css选择器实现了html 框架 ,并可以通过pkg html/template 等进行扩展
  • ego :  轻量级模板语言,让你可以使用Go语言来创建模板。模板会被转化为 Go 语言并编译
  • extemplate :  围绕html/template 的小型封装器,可以轻松实现基于文件的模板继承
  • fasttemplate :  简单而快速的模板引擎。替换模板占位符的速度比text/template :  快10倍
  • gofpdf : PDF文档生成器,高度支持文本、绘图和图像。
  • gospin :  语法引擎,对于A/B、测试文本/文章片段和创建更自然的对话非常有用。
  • goview : Goview是一个轻量级的、简约的、习惯性的模板库,基于golang html/template来构建Go web应用。
  • hero :Hero是一个趁手的、快速的、强大的Go 语言模板引擎
  • jet :Jet 模板引擎
  • kasia.go : 使用go语言实现的 用于HTML 和其他文本文件的模板系统,
  • liquid :  Go 语言实现的Shopify Liquid模板.
  • maroto :  用Maroto的方式来创建PDF。Maroto的灵感来自于Bootstrap并使用gofpdf
  • mustache :  Go语言实现的Mustache模板语言
  • pongo2 :  类似Django的模板引擎
  • quicktemplate :  快速、强大且易用的模板引擎。将模板转化为Go 语言并进行编译
  • raymond :  使用Go语言实现的完整的handlebars
  • Razor : Go语言的Razor 视图引擎
  • Soy :go语言实现的谷歌闭包模板(也就是Soy templates), 参见官方说明文档 :
  • velvet :   使用Go语言实现的完整的` handlebars

测试相关

测试库和测试数据集生成库

  • 测试框架
    • apitest : 为基于REST的服务或HTTP处理程序提供简单且可扩展的行为测试库,支持模拟外部http调用和渲染序列图。
    • assert :  基础断言库,用于对Go语言程序进行测试,提供了一些用于自定义断言的代码块
    • badio :  Go 语言testing/iotest包的扩展
    • baloo :   表达性强、多功能的、端到端的HTTP API 测试工具
    • biff : Bifurcation测试框架,兼容BDD
    • charlatan :  为测试生成虚假接口实现的工具。
    • commander :   用于在windows、linuxosx上测试`cli应用程序的工具。
    • covergates :  自主的代码覆盖率报告审查和管理服务。
    • cupaloy :   用于测试框架的简单快照测试插件。
    • dbcleaner :  清空数据库用于测试,受到database_cleaner的启发
    • dsunit :  数据库测试,针对SQL、 NoSQL、 结构化文件.
    • embedded-postgres :  作为另一个Go应用程序或测试的一部分,在Linux、OSX 或Windows上本地运行一个真正的 Postgres 数据库
    • endly :   声明式端到端功能测试。
    • flute : HTTP客户端测试框架。
    • frisby : REST API 测试框架
    • ginkgo : BDD 测试框架
    • go-carpet :  用于在终端中查看测试覆盖率的工具
    • go-cmp :  用于比较测试中的Go值的软件包。
    • go-hit :  用golang编写的http 集成测试框架。
    • go-mutesting :Go语言源代码突变测试(Mutation testing )
    • go-testdeep :  扩展了go 测试包的极为灵活的golang 深度比较库,。
    • go-vcr :   记录并重放HTTP交互,用于快速的、确定性的、准确的测试
    • goblin :  类似Mocha 的测试框架
    • goc : Goc是一个针对Go 编程语言的综合覆盖测试系统。
    • gocheck :  更加高级的测试框架,用于替换Gotest.
    • GoConvey : BDD 风格的测试框架,具有web 界面和计时刷新功能
    • gocrest :   用于Go 断言的可组合的类似hamcrest的匹配器。
    • godog :  类似于CucumberBehatGo BDD框架。
    • gofight :  对Go 语言的路由框架进行API 测试
    • gogiven :  类似YATSPEC 的Go BDD测试框架。
    • gomatch :  类似Rspec 的匹配器/断言库。
    • gomega :  类似Rspec 的matcher/assertion
    • GoSpec :BDD风格的测试框架
    • gospecify :   支持BDD语法 。对于任何使用过 rspec 等库的人来说应该非常熟悉
    • gosuite :  轻量级测试套,为Go1.7's Subtests带来了setup/teardown功能
    • gotest.tools :  用于增强 Go 测试包并支持常见模式的软件包集合。
    • Hamcrest :   用于声明式Matcher 对象的流畅框架,当应用于输入值时,会产生自描述的结果。
    • httpexpect :   简洁的、声明式的、易用的端到端HTTP 及 REST API 测试
    • jsonassert :  用于验证JSON有效载荷是否被正确序列化的软件包。
    • restit :   帮助编写RESTful API集成测试的Go 语言微型框架.
    • schema :   对请求和响应中使用的JSON模式进行快速、简单的表达式匹配。
    • stop-and-go :    并发测试助手。
    • testcase :  行为驱动开发的直观测试框架。
    • testfixtures : 类似Rails的测试工具,用于测试数据库应用
    • Testify :  对标准测试包的扩展
    • testmd :  将markdown片段转换为可测试的go代码。
    • testsql :  在测试前从SQL文件中生成测试数据,并在测试结束后将其清除。
    • trial :   快速简单的可扩展断言,不需要引入太多模板。
    • Tt :  简单而多彩的测试工具。
    • wstest : Websocket客户端,用于对于websocket HTTP.Handler进行单元测试

  • Mock
    • counterfeiter :  用于生成自包含mock对象的工具
    • go-localstack :  在AWS测试中使用localstack的工具。
    • go-sqlmock :Mock SQL ,用于测试数据库交互
    • go-txdb :  基于单事物的数据库驱动,主要用于测试目的
    • gock :   多功能、易用HTTP mock
    • gomock :  给 Go 语言用的Mock框架
    • govcr :  HTTP mock: 离线测试时记录和重放浏览器的动作
    • hoverfly :HTTP(S) : proxy,用于记录和模拟REST/SOAP API,具有可扩展的中间件和易于使用的 CLI。
    • httpmock :  轻松模拟来自外部资源的 HTTP 响应。
    • minimock : Mock生成器
    • mockhttp :  Go HTTP.ResponseWriter使用的 Mock 对象
    • timex :   原生时间包的测试友好的替代品。
  • Fuzzing and delta-debugging/reducing/shrinking.
    • go-fuzz :  随机化测试系统
    • gofuzz :  用于生成随机值来初始化Go语言对象的库
    • Tavor :  通用模糊测试框架
  • Selenium及浏览器控制工具
    • cdp :   类型安全的的Go 语言接口,可以用于浏览器或任何实现了 Chrome debug协议的其他待调试对象
    • chromedp :  用于驱动和测试Chrome, Safari, Edge, Android Webviews, 以及其他支持Chrome调试协议的产品
    • ggr :   轻量级服务器,可以将 Selenium Wedriver 的请求路由或代理到多个Selenium hubs.
    • rod : Devtools驱动,使网络自动化测试变得简单。
    • selenoid : Selenium hub服务器的替代品,可以在容器中启动浏览器
  • Fail injection
    • failpoint :  Golang中failpoints 的实现。

文本处理

解析和操作文本的代码库

  • 特定文本格式处理
    • align :  文本对齐
    • allot :   占位符及通配符文本解析
    • bbConvert :   将bbCode 转换为HTML
    • blackfriday : Markdown 解析器
    • bluemonday : HTML 清理工具
    • codetree :  解析缩进代码(python、pixy、scarlet等)并返回一个树形结构。
    • colly :  go语言版爬虫框架
    • commonregex :Go常用正则表达式的集合。
    • dataflowkit : Web爬虫框架用于将网站转化为结构化数据。
    • did :   Go中的DID(去中心化标识符)解析器和Stringer
    • doi :   Go中的文档对象标识符(doi)解析器。
    • editorconfig-core-go : Go 语言用的Editorconfig 文件解析和操作库
    • enca :   libenca :  的极简的cGo接口
    • encdec : 通用编码和解码器
    • genex :  计算并展开正则表达式为所有匹配的字符串
    • github_flavored_markdown : GitHub Flavored Markdown 渲染器(使用 blackfriday),带有栅栏式代码块高亮,可点击标题锚链接
    • go-fixedwidth : 固定宽度的文本格式(带反射的编码器/解码器)。
    • go-humanize :    将时间、数字和内存大小格式化为人类可读的格式。
    • go-nmea :   Go语言的NMEA解析库。
    • go-runewidth :  用于获取固定宽度的字符或字符串的函数。
    • go-slugify :  制作支持多语言的漂亮slug
    • go-toml : TOML格式的Go库,
    • go-vcard :  解析和格式化vCard
    • go-zero-width :   Go的零宽度字符检测和移除。
    • gofeed :  使用Go语言解析RSSAtom
    • gographviz :    用以解析Graphviz DOT 语言
    • gommon/bytes :   格式化二进制为字符串
    • gonameparts :  将人名解析为几个独立的部分
    • goq :  声明式HTML 编组,使用结构标签和jQuery语法 (使用GoQuery).
    • GoQuery :GoQuery 为Go语言带来了一组类似jQuery 的语法和功能
    • goregen :  根据正则表达式生成随机字符串
    • goribot :  简单的golang爬虫框架,3行代码就可以创建爬虫。
    • gotext :  Go语言版本的GNU gettext工具。
    • guesslanguage :  用于确定unicode文本的自然语言的函数。
    • html-to-markdown :  将HTML转换为Markdown。甚至适用于整个网站,并可通过规则进行扩展。
    • htmlquery :HTMLXPath 查询包,让您可以通过XPath 表达式从HTML文档中提取数据。
    • inject :  一个基于反射的注入器
    • ltsv :  适用于 Go 的高性能LTSV(Labeled Tab Separated Value)阅读器。LTSV (Labeled Tab Separated Value) :
    • mxj :   通过点分路径和通配符来提取值 将XML编解码为JSON 或map[string]interface{};目的是用于替代Replaces x2j 和j2x 包.
    • pagser :   Pagser是一个简单的、可扩展的、可配置的、基于goquerystruct标签的golang 爬虫解析和反序列化工具,能够将html页面映射到struct结构体中。
    • podcast :  Golang中兼容iTunesRSS 2.0的播客生成器。
    • sdp : SDP Session Description Protocol, RFC 4566实现
    • sh : Shell解析器及格式化工具
    • slug :URL友好的slug 化工具,支持多种语言
    • Slugify :Go语言静态地址生成器,可以处理字符串
    • syndfeed :   适用于Atom 1.0和RSS 2.0的聚合feed
    • toml : TOML 配置格式的编码解码器
  • 文本工具
    • gofuckyourself :  敏感词过滤器
    • gotabulate :  使用Go轻松地打印你的表格数据。
    • kace :  涵盖常见初始化的普通大小写转换。
    • parseargs-go :  能理解引号和反斜杠的字符串参数解析器。
    • parth :  URL路径分割解析库。
    • radix :  快速字符串排序算法。
    • regroup :  使用struct标记和自动解析将正则表达式命名的组匹配到go 结构中。
    • Tagify :  从给定的源中产生一组标签。
    • textwrap : Pythontextwrap模块的实现。
    • TySug :  关于键盘布局的替代建议。
    • xj2go :  将xml或json转换为go结构。
    • xurls :  从文本中提取URLs

第三方API

第三方API 汇总

  • airtable :  用于访问Airtable API的 Go 客户端库。Airtable API :
  • amazon-product-advertising-api : Amazon Product Advertising API 的 Go 客户端库。 Amazon Product Advertising API :
  • anaconda : Twitter 1.1 API的 go 语言客户端
  • aws-sdk-go : AWS 提供的官方go语言SDK
  • brewerydb :   用于访问BreweryDB API的 Go 语言库
  • cachet : Cachet(开源状态页系统)的Go客户端库。
  • Cachet (open source status page system) :  Cachet (open source status page system)的 Go 语言客户端
  • circleci :  用于和with CircleCI's API进行交互的Go 语言客户端
  • clarifai :  用于和Clarifai API 交互的Go语言库
  • codeship-go :  用于与CodeshipAPI v2 进行交互的Go客户端库。
  • coinpaprika-go :  Go客户端库,用于与Coinpaprika的API进行交互。
  • discordgo :   用于与Discord 聊天API进行交互的Go语言客户端。
  • ethrpc : Ethereum JSON RPC API 的 Go 绑定
  • facebook :  支持Facebook Graph API 的库
  • fcm :  用于Firebase Cloud Messaging 的 Go 库。
  • gads :  Google Adwords 非官方 API
  • gami : Asterisk Manager Interface 的 Go 语言库
  • gcm : Google Cloud Messaging 库
  • geo-golang :  用于与  Google Maps,  MapQuest, Nominatim, OpenCage, Bing , Mapbox , 及 OpenStreetMap  地理编码 / 反编码 APIs 交互的库
  • github :  用于访问GitHub REST API v3 的Go库。
  • githubql :  用于访问GitHub GraphQL API v4 的Go 库。
  • go-aws-news :   用于从AWS获取最新信息的 Go 应用程序和库。
  • go-chronos :  用于与Chronos :   Job Scheduler交互的Go库。
  • go-hacknews :  HackerNews API的Go客户端。
  • go-here :  围绕HERE基于位置的API的Go客户端库。
  • go-imgur :  用于imgur 的Go客户端库。
  • go-jira :   用于 Atlassian JIRA :  的Go客户端库。
  • go-marathon :  用于与MesosphereMarathon PAAS交互的Go库。
  • go-myanimelist :  用于访问 MyAnimeList API :  的 Go 客户端库。
  • go-postman-collection :  Go 模块,用于与 Postman Collections :   进行交互(与 Insomnia 兼容)。
  • go-sophos :  Go客户端库,用于零依赖的 Sophos UTM REST API :
  • go-sptrans :   用于SPTrans Olho Vivo API的Go客户端库。
  • go-telegraph :  Telegraph发布平台API客户端。
  • go-trending :用于访问Github的trending repositories库和developers : 开发者信息。
  • go-twitch :   用于与Twitch v3 API交互的Go客户端。
  • go-twitter :  用于Twitter v1.1 APIs 的Go 客户端库。
  • go-unsplash :   用于Unsplash.comAPI 的 Go 客户端库。
  • go-xkcd :   -xkcd API 的Go 客户端。
  • gogtrends : Google Trends 非官方API
  • golang-tmdb :   电影数据库API v3Golang 版本api
  • golyrics : 用于从Wikia 网站获取音乐歌词数据的 Go 库。
  • gomalshare : Go library MalShare API。 malshare.com :
  • GoMusicBrainz :   Go MusicBrainz WS2客户端库。
  • google :  为Go 自动生成的Google API
  • google-analytics谷歌分析报告go语言客户端。
  • google-cloud :Google Cloud APIs Go客户端库。
  • google-email-audit-api : :Google G Suite Email Audit API :  的Go客户端库。
  • google-play-scraper :  从`Google Play商店获取数据。
  • gopaapi5 :   Amazon Product Advertising API 5.0 :  API 5.0的Go客户端库。
  • gosip :  Go客户端库SharePoint API
  • gostorm :GoStorm在满足实现了BoltsStorm外壳通信所需的通信协议的基础上实现了Storm接口
  • hipchat :  这个项目为Hipchat API实现了一个golang客户端库
  • hipchat (xmpp) :  通过XMPPHipchat通信的golang包。
  • igdb :  Internet Game Database API :的Go客户端。
  • kanka :  Kanka API   的Go客户端
  • lastpass-go : LastPass : API的Go客户端库。
  • libgoffi :  用于本地 libffi   集成的库适配器工具箱。
  • Medium :  用于MediumOAuth2 APIGolang SDK
  • megos :  用于访问Apache Mesos集群的客户端库。
  • minio-go :  go 语言Minio 客户端,用于Amazon S3 兼容的云存储
  • mixpanel : Mixpanel 是用于追踪事件并发送Mixpanel profile的更新到Mixpanel 的库
  • patreon-go : Patreon API.
  • paypal : PayPal支付API
  • playlyfe :Playlyfe Rest APIGo 语言SDK
  • pushover : Pushover API 的Go语言封装
  • rawg-sdk-go :  用于RAWG视频游戏数据库API的Go库。RAWG Video Games Database :
  • rrdaclient :  访问statdns.com API,这是通过HTTP进行DNS查询的RRDA API
  • shopify :  用于接入Spotify WEB API 的Go 语言库
  • simples3 :  简单的不加修饰的AWS S3库,使用Go编写的V4 SigningREST api
  • slack :   Slack API
  • smite :  Go包,用于包装对Smite游戏API的访问。
  • spotify :   访问Spotify WEB API 的Go 库。
  • steam:用于与Steam游戏服务器交互的Go 库。
  • stripe :  用于访问Stripe APIGo客户端。
  • textbelt :  textbelt.com txt messaging API 的go语言客户端
  • translate : Go 在线翻译包
  • Trello : Trello APIGo 语言封装
  • TripAdvisor :TripAdvisor API的Go语言封装。
  • tumblr : Tumblr v2 API 的Go 语言封装
  • twitter-scraper :  无需认证和限制就能抓取Twitter 前端API
  • uptimerobot :  Uptime Robot v2 APIGo包装器和命令行客户端。
  • vl-go :  VerifID身份验证层APIGo客户端库。
  • webhooks : GitHub 和BitbucketWebhook接收器
  • wit-go :   用于wit.ai HTTP API 的Go 客户端。
  • ynab : YNAB APIGo语言封装。
  • zooz :  Zooz API 的Go语言客户端

工具库

可以提升效率的通用代码库和工具

  • apm : 具有HTTP APIGo语言进程管理工具.
  • backscanner :   类似于bufio.Scanner 的扫描器,但它以反向顺序读取并返回结果。
  • beyond :  Go工具,它将推动你进入AOP世界!
  • blank :  验证或删除字符串中的空白和空白字符。
  • boilr :  用于从模板中快速创建项目的CLI工具。
  • chyle :  使用git仓库的变更日志生成器,具有多种配置
  • circuit :  高效且功能完整的Hystrix断路器模式的go语言实现
  • circuitbreaker :  Go中的断路器。
  • clockwork :  使用简单、流畅的语法来调度周期性任务
  • cmd :  用于在osx、windowslinux上执行shell命令的库。
  • command :   命令模式,支持线程安全的串行、并行调度
  • copy :  用于快速复制不同类型结构的软件包。
  • copy-pasta :  通用多工作站剪切板,使用类似S3 的后端作为存储
  • countries :   完全执行ISO-3166-1、ISO-4217、ITU-T E.164、Unicode CLDR和IANA ccTLD标准的库。
  • create-go-app :  通过运行一个命令就可以创建一个新的生产就绪项目,包括后端(Golang)、前端(JavaScript、TypeScript)和部署自动化(Ansible、Docker)的强大的CLI
  • ctop :  用于容器指标,类似于Top的接口(例如htop)。
  • ctxutil :  用于上下文context的实用函数集合。
  • dbt :  从中央可信仓库运行自更新签名二进制文件的框架。
  • Death :  -利用信号管理应用程序的关闭
  • Deepcopier : Go的简单结构拷贝库。
  • delve : Go语言调试器
  • dlog :  编译时控制的日志,让你的release 包变得更小而不需移除debug调用
  • equalizer :  Go的配额管理器和速率限制器。
  • ergo :  简化了对运行在不同端口的多个本地服务的管理。
  • evaluator :   基于s-expression动态地评估一个表达式。简单且易于扩展。
  • filetype :  用于推断文件类型的小程序包,它可以检查魔法数字签名。
  • filler :   使用"fill "标签来填充结构的小工具。
  • filter :  提供Go数据的过滤、净化和转换。
  • fzf :  命令行模糊查找工具
  • gaper :  当Go 项目崩溃或某些监视文件发生变化时,构建并重新启动该项目。
  • generate :  针对一个路径或环境变量,递归的执行Go generate,可以通过正则表达式来进行过滤
  • ghokin :  并行化的格式化程序,不需要对gherkin (cucumber, behat...),的外部依赖。
  • git-time-metric :  简单、无缝、轻量级的Git时间跟踪。
  • go-astitodo :   解析GO代码中的todo事项。
  • go-bind-plugin :  用于包装golang 插件导出的符号的go:generation工具 (仅限 1.8)。
  • go-bsdiff :  纯粹的Go bsdiff 和bspatch库以及CLI 工具。
  • go-convert : go-convert 使您能够将一个值转换为另一种类型。
  • go-countries :   轻量级的ISO-3166代码查询。
  • go-dry :  go语言中DRY (don't repeat yourself)
  • go-funk :  Go语言工具库,提供了很多有用的工具(map, find, contains, filter, chunk, reverse, ...)
  • go-health : 简化了你在服务中添加健康检查的方式。
  • go-httpheader :  用于将结构体编码进http 头的Go 语言库
  • go-lock : go-lock 是一个实现读写互斥和读写试锁的无饥饿状态的锁库。
  • go-problemdetails :   用于处理问题细节的Go包。
  • go-rate : Go 语言版本的限速器
  • go-safe :panic处理安全沙盒。
  • go-sitemap-generator :XML网站地图生成器
  • go-trigger :Go语言全局事件触发器,通过 id 和触发器,在程序的任何地方注册事件
  • goback :Go语言的简单的指数补偿包
  • goctx :  获取高性能的上下文值。
  • godaemon :  用于编写守护进程的工具
  • godropbox : Dropbox开发的用于编写Go语言服务/应用的库
  • gohper :  能够帮助你进行软件开发的工具和模块
  • golarm : 告警(支持系统事件)库
  • golog :  简单、轻量级的命令后工具,用于对你的计划任务进行跟踪
  • gopencils :Go语言库,能够很容易的使用各种REST APIs.
  • goplaceholder :  用于生成占位符图片的小golang库。
  • goreadability :   使用Facebook Open Grapharc90的可读性提取网页摘要。
  • goreleaser : 尽可能快速的发布Go语言二进制文件
  • goreporter :  进行代码静态分析,单元测试,代码检视并生成代码质量报告的工具
  • goseaweedfs :  具有几乎全部功能的SeaweedFS客户端库。
  • gostrutils :  字符串操作和转换函数的集合。
  • gotenv :  从 .env 或者任何io.Reader中加载环境变量
  • gpath :   用于简化结构体域访问的库
  • gubrak :  带有语法糖的Golang工具库。它类似于lodash,但适用于golang
  • handy :  许多实用工具和帮助程序,如字符串处理程序/格式化程序和验证器。
  • hostctl :  用简单的命令管理/etc/hosts 的CLI工具。
  • htcat :   并行及流水线的HTTP GET 工具
  • hub :  封装了git命令,提供了额外的功能用于在终端中和Github 进行交互
  • hystrix-go :  实现 Hystrix 风格的、程序员预定义的fallback 机制(熔断)
  • immortal :  *nix 跨平台 (与操作系统无关的)监控程序
  • intrinsic :  不需要编写任何汇编代码就能使用x86 SIMD
  • jsend : JSend的实现是用Go编写的。
  • jump : Jump通过学习你的习惯来帮助你更快地浏览文件。
  • koazee :  受Lazy评估和函数式编程启发而开发的库,它消除了使用数组的麻烦。
  • lets-go : Go模块,为云原生REST API开发提供了常用的实用工具。还包含AWS特定的实用程序。
  • limiters : Golang中分布式应用的速率限制器,具有可配置的后端和分布式锁。
  • lrserver :GoLiveReload服务器。
  • mc :  Minio Client提供了与Amazon S3兼容的云存储和文件系统管理工具。
  • mergo :  Golang中合并结构和地图的助手。对配置默认值很有用,避免了混乱的if语句。
  • mimemagic : 纯go语言实现的超强的MIME嗅探库/工具。
  • mimesniffer :GoMIME 类型嗅探器。
  • mimetype :  基于魔数的MIME类型检测包。
  • minify :  快速压缩HTML, CSS, JS, XML, JSON 以及SVG 文件格式
  • minquery :  MongoDB / mgo.v2查询,支持高效的分页。
  • mmake :  现代Make工具
  • moldova :  基于输入目标生成随机数据的工具
  • mole :  用于轻松创建ssh隧道的cli应用程序。
  • mongo-go-pagination官方mongodb/mongo-go-driver包的Mongodb Pagination,支持普通查询和聚合管道。
  • mssqlx :  数据库客户端库,代理任何主从,主主结构。考虑到轻量级和自动平衡。
  • multitick :   多路复用器
  • myhttp :  支持超时的HTTP GET请求的简单API
  • netbug :  轻松地对你的服务进行远程剖析。
  • nfdump :   读取nfdump netflow文件。
  • nostromo :  用于构建强大别名的CLI
  • okrun : golang error流式处理库
  • olaf :  在Go中实现的Twitter Snowflake
  • onecache :  支持多个后端存储的缓存库(Redis、Memcached、文件系统等)。
  • panicparse :   将类似的goroutines分组,并对堆栈转储进行着色。
  • pattern-match : 模式匹配库
  • peco :  简单的交互式过滤工具。
  • pgo :  为PHP社区提供方便的功能。
  • pm :  带有HTTP API 的进程(即goroutine)管理器。
  • ptr :   提供从基本类型的常量中简化创建指针的函数的包。
  • r :  类似于Python 的range() 的Go 库
  • rclient :  可读性良好、灵活、易用的REST APIs 客户端
  • realize : Go 语言构建系统,可以监控文件变化并重新加载。运行,构建,监控文件并支持自定义路径
  • repeat : Go实现不同的回退策略,对重试操作和心跳有用。
  • request :Go语言版的HTTP Requests for Humans™.
  • rerate :  Go的基于Redis的速率计数器和速率限制器。
  • rerun :  当源码发生变化时,重新编译和重新运行go应用程序。
  • rest-go :   提供许多有用的方法来使用rest api的包。
  • retry :    最先进的功能机制,用于重复执行动作直到成功。
  • retry :  简单但高度可配置的Go重试包。
  • retry : Go中简单易行的重试机制包。
  • retry :  确保工作能够完成的go语言库。
  • retry-go :   为golang提供简单易行的重试。
  • robustly :   弹性地运行函数,捕捉和重启 并自动处理panic
  • scan :  直接将golang sql.Rows扫描为structs、slicesprimitive类型。
  • scany :  用于将数据库中的数据扫描成Go结构等的库。
  • serve :  静态http服务器。
  • shutdown :   用于os.Signal 处理的应用程序关机钩子。
  • silk :  读取silk netflow文件。
  • slice :  用于常见Go分片操作的类型安全函数。
  • sliceconv :  原始类型之间的切片转换。
  • slicer :  让分片的工作更容易。
  • sorty :  快速并发/并行排序。
  • spinner : Go 语言软件包,提供多种选项,方便在终端中创建加载动画
  • sqlx :  为内建的database/sql 软件包提供扩展
  • statiks :  快速、零配置、静态的HTTP文件服务器。
  • Storm :  用于BoltDB 的简单又强大的工具
  • structs :  实现简单的函数来操作结构。
  • Task :  简单来讲就是"Make"的替代品
  • taskctl :  并发任务运行库。
  • tik :  为Go提供简单方便的定时任务调度包。
  • tome :  Tome被设计用来对RESTful API进行简单分页。
  • toolbox :  slice, map, multimap, 结构体, 函数,数据转换工具、服务路由,宏求值和标记器工具
  • ugo :  uGo是一个切片工具箱。
  • UNIS :  Go语言字符串处理函数的通用架构
  • usql :  usql是一个通用的命令行接口,用于操作sql数据库
  • util : 收集了很多有用的函数
  • wuzz :   交互式命令行程序,用于进行HTTP 检查
  • xferspdy :  Xferspdy 提供了二进制比对以及patch补丁功能

UUID

UUID 生成和操作库

  • goid :  生成并解析符合RFC4122标准的V4 UUID
  • gouid :  只需一次分配就能生成加密安全的随机字符串ID
  • nanoid :  微型而高效的Go唯一字符串ID生成器。
  • sno :  内嵌元数据的紧凑、可排序和快速的唯一ID
  • ulid : ULID (Universally Unique Lexicographically Sortable Identifier) 的Go实现。
  • uniq :  使用命令快速、安全的唯一标识符。
  • uuid :  用快速或加密质量的随机节点标识符生成、编码和解码UUIDs v1
  • uuid :  通用唯一标识符(UUID)的实现。支持UUID的创建和解析。
  • uuid :  基于RFC 4122DCE 1.1UUIDs Go包。
  • wuid :  极快的唯一数字生成器,比UUID快10-135倍。

校验库

用于校验的库

  • checkdigit :  提供数字算法(Luhn, Verhoeff, Damm)和数字计算(ISBN, EAN, JAN, UPC等)功能的库。
  • gody :  针对 'Go` 的轻量级结构体验证器。
  • govalid :  基于标签的快速结构体验证。
  • govalidator :  数据验证及清晰工具,用于字符串,数字, 数组切片及结构体
  • govalidator :  用简单的规则验证Golang请求数据. 高度受Laravel的请求验证的启发.
  • jio : jio是一个类似于joi 的json模式验证器.
  • ozzo-validation :   支持多种数据类型的验证 (结构体,字符串,键值对,数组切片等等),具有可配置、可扩展的验证规则,且使用常用代码结构定义,而非结构体标签
  • terraform-validator : Terraform的规范和约定验证器。
  • validate :  用于数据验证和过滤的Go包,支持验证Map、Struct、Request(Form、JSON、url.Values、Uploaded Files)数据和更多的功能。
  • validate :  为Go语言程序编写验证工具的框架
  • validator :  Go结构体及域验证,包括:跨域、跨结构体,Map, 切片和数组

版本控制

版本控制相关库

  • gh :  用于GitHub Webhooks的可编程服务器以及net/HTTP 中间件
  • git2go :  libgit2Go语言接口
  • go-git :  纯Go中实现高度可扩展的Git
  • go-vcs :  通过Go语言来操作和检视VCS代码仓
  • hercules :  查看git repo历史的代码库
  • hgo : HGo 是一个Go语言软件包集合,提供了对本地Mercurial仓库的读取能力.

视频

视频和流媒体相关库

  • gmf : FFmpeg av*库的 Go 语言接口.
  • go-astisub :  使用 Go 语言操作字幕(.srt, .stl, .ttml, .webvtt, .ssa/.ass, teletext, .smi, etc.).
  • go-astits :  在 GO 中解析和解调MPEG 传输流(.ts)。
  • go-m3u8 :  苹果m3u8播放列表的解析器和生成库。
  • go-mpd : MPEG-DASH清单文件的解析器和生成器库。
  • goav :  易用的FFmpegGo 语言接口
  • gst : GStreamer的 Go 语言接口
  • libgosubs :  Go的字幕格式处理库。支持.srt、.ttml和.ass`。
  • libvlc-go : libvlc 2.X/3.X/4.X的go语言封装)(VLC 媒体播放器使用)。
  • m3u8 :  用于苹果HLSM3U8播放列表解析器和生成器库
  • v4l :Go语言编写的Linux下使用的视频截图库

web框架

web 框架

  • aah :  可扩展、高性能、快速发布的Go语言web框架
  • Aero : Go的高性能Web框架,在Lighthouse 评比中拿到最高分
  • Air :  理想的RESTful web 框架
  • appy :  高效Web框架,帮助企业更容易扩展业务。
  • Banjo : 简单、快速的Go web框架。
  • Beego :   beeGo 是一个开源的、高性能的 Go 语言web框架
  • Buffalo :  为Go 语言带来堪比Rails 的高生产效率
  • Echo :   高性能、极简的Go语言web 框架
  • Fiber :  受Express.js启发的Web 框架,构建在Fasthttp上。
  • Fireball :  更加自然的web框架
  • Flamingo :  可插拔的web项目框架。包括模块的概念,并提供DI、Configareas、i18n、模板引擎、graphql、可观察性、安全性、事件、路由和反向路由等功能。
  • Flamingo Commerce :   提供电子商务功能,使用简洁的架构,如DDD、端口和适配器,你可以用它来构建灵活的电子商务应用。
  • Gearbox :  用Go编写的网络框架,专注于高性能和内存优化。
  • Gin :  Gin 是一个Go 语言编写的 web 框架,提供了一组类似martiniAPI,且具有更好的性能(40倍的性能提升)。如果你需要高性能和高生产率,这个框架很适合你
  • Ginrpc :Gin参数自动绑定工具,Gin rpc工具。
  • Gizmo :  纽约时报正在使用对微服务工具集
  • go-json-rest :   快速、简单的创建RESTful JSON API.
  • go-rest : Go 语言REST 框架
  • goa :   用于开发微服务的框架,基于RubyPraxis 的设计
  • Golax :  一个非Sinatra的快速HTTP框架,支持Google自定义方法、深度拦截器、递归等。
  • Golf :   快速、简单、轻量级的Go 语言微型web框架。具有强大的功能且没有标准库以外的依赖
  • Gondola :  用于快速编写高性能网站的框架
  • gongular :  快速Go web 框架,支持输入映射/验证以及依赖注入
  • goweb :  具有路由、websockets、日志、中间件、静态文件服务器(可选gzip)和自动TLS的Web框架
  • Goyave :  功能完整的Web框架,旨在实现简洁的代码和快速开发,具有强大的内置功能。
  • hiboot : hiboot是一个高性能的web应用框架,支持自动配置和依赖注入。
  • Macaron : Macaron是一个高效的模块化设计的web框架
  • mango :  ManGo 是一个模块化web应用框架,受到RackPEP333 的启发
  • Microservice : 用于创建微服务的框架,使用Go语言编写
  • neo :  极小且快速的 Go 语言web 框架,具有及其简单的API
  • patron : Patron是一个遵循最佳云实践的微服务框架,专注于生产力。
  • Resoursea :  用于快速编写基于资源的服务的REST框架。
  • REST Layer :  在数据库之上构建REST/GraphQL API的框架,主要是通过配置而不是代码来进行开发
  • Revel :go语言高生产率框架
  • rex :Rex 是一个用于进行模块化开发的库,基于Gorilla/mux 完全兼容大多数的net/HTTP
  • rux :  用于构建golang HTTP应用程序的简单、快速的web框架。
  • tango :  微型的、支持插件的web框架
  • tigertonic :  受到 Dropwizard 启发,用于构建JSON web服务的Go语言框架,
  • uAdmin :   受Django启发的Golangweb框架,。
  • utron :  轻量级的go语言MVC 框架
  • vox : Golang网络框架,灵感来自Koa
  • WebGo :  构建Web应用的微服务框架;具有处理程序链、中间件和上下文注入功能。具有标准库兼容的HTTP处理程序(即http.HandlerFunc)。
  • YARF : 微服务框架,用于快速、简单地构建REST APIs以及web 服务

中间件

中间件

  • client-timing :  在消息头部添加服务器定时信息的HTTP客户端。
  • CORS :  非常方便地向你的api中添加CORS功能
  • formjson :  以标准的表单POST方式处理JSON输入。
  • go-fault : Go的错误注入中间件。
  • go-server-timing : 向头信息中 添加/解析服务器计时信息。
  • Limiter :  超级简单的限速中间件
  • ln-paywall :   Go 中间件,用于通过Lightning Network (Bitcoin) 请求将API 货币化。
  • Tollbooth : HTTP 请求限速中间件
  • XFF :  理X-Forwarded-For头的中间件

创建http中间件的代码库

  • alice :  创建链式中间件的库
  • catena : HTTP.Handler封装器 (和chain具有相同的API ).
  • chain :   可以带数据的Handler 链式封装器(net/context-based "middleware").
  • go-wrap :  小型中间件库,用于net/HTTP.
  • gores :   用于处理HTML, JSON, XML 等。对于RESTful APIs 很有用。
  • interpose :  极简的net/HTTP 中间件
  • mediary :  为http.Client 添加拦截器,允许转储/重构/跟踪/...请求/响应。
  • muxchain :  用于net/HTTP的轻量级中间件
  • negroni :  符合语言习惯的HTTP中间件库
  • render :  用于轻松渲染JSON, XML, 及HTML 模板响应的库
  • renderer :  简单、轻量级和更快的响应JSON、JSONP、XML、YAML、HTML、File的Go渲染包。
  • rye :  小型 Go 语言中间件库 ,支持JWT, CORS, Statsd, 及Go 1.7 context
  • stats : Go语言中间件,用于存储web应用的多种信息

路由

  • alien :  轻量级、超快速的HTTP 路由,
  • bellt :  一个简单的Go HTTP路由器。
  • Bone :  轻量、快速的HTTP 多路复用器
  • Bxog :  为go语言编写的简单、快速的HTTP路由。它能够根据接收到的参数创建URL,并且能够解析多种不同复杂度、长度和嵌套的路由。
  • chi :   基于net/context的小巧、快速、具有丰富表达力的HTTP路由.
  • fasthttprouter :  从httprouter分叉出来的高性能路由器,也是第一个适合fasthttp的路由器。
  • FastRouter :   从httprouterfork出来的高性能路由,是第一个适配fasthttp的路由
  • gocraft/web :  Mux及中间件包
  • Goji :Goji是一个极简的、灵活的HTTP 请求数据分选器,支持net/context.
  • goroute :  简单而强大的HTTP 请求复用器。
  • GoRouter : server/API微服务框架,具有HTTP 请求路由模块router模块, 多路复用模块并且提供了支持net/context的中间件 :
  • gowww/router :  超快的HTTP 路由,完全兼容net/HTTP.Handler接口.
  • httprouter :  高性能路由,使用这个库和标准http处理工具可以构建一个非常高性能大web框架
  • httptreemux :  快速,灵活,树状结构的HTTP路由。受到了httprouter 的启发
  • lars :   轻量级、快速、可扩展、零分配的HTTP路由,用于创建定制化的框架
  • mux :  强大的URL路由和分发库
  • ozzo-routing :  极快的Go (golang) HTTP路由器,支持正则表达式路由匹配。完全支持构建RESTful API
  • pure :   是一个轻量级http路由,严格参照net/HTTP标准实现
  • Siesta :   具有可组合性的框架,用于编写中间件和handlers
  • vestigo : 用于构建go语言web应用 ,高性能、符合HTTP 标准的URL 路由,
  • violetear : Go http路由库
  • xmux :  高性能 muxer,基于httprouter ,支持net/context
  • xujiajun/gorouter :   简单快速的go HTTP路由器。

WebAssembly

  • dom : DOM库
  • go-canvas :   使用HTML5 Canvas 的库,所有的绘图逻辑都在go代码中执行。
  • tinygo :  基于LLVM,适用于微型场景的Go编译器。包括微控制器、WebAssembly和命令行工具。
  • vert : GoJS值之间的互操作。
  • wasmbrowsertest : 在浏览器中运行Go WASM测试。
  • webapi :  从WebIDL生成DOMHTML的封装。

Windows

  • d3d9 : Direct3D9 的Go 语言封装
  • go-ole :  为Go语言实现的Win32 OLE
  • gosddl :  从SDDL-string到用户友好的JSON的转换器。SDDL由四个部分组成。Owner、Primary Group、DACL、SACL

XML

  • XML-Comp :   命令行XML比较工具,可以生成关于目录、文件和标签对差异信息
  • xml2map : Golang编写的XMLMAP的转换器。
  • xmlwriter :   基于libxml2 的xmlwriter 模块的xml生成器api.
  • xpath : XPath 库
  • xquery :XQuery 使你可以使用XPath表达式从HTML/XML文档中抽取数据和求值,
  • zek : 从XML 生成一个Go结构体。

相关工具

go相关工具和插件

代码分析

  • apicompat :  检测go语言项目最近的变化,用于监测不能向后兼容的代码修改
  • dupl :  用于检测重复代码的工具
  • errcheck : Errcheck是一个用于检测go语言程序中存在未处理错误的程序
  • gcvis :   实时地将Go 语言垃圾回收进行可视化
  • go-checkstyle : checkstyle是一个类似java checkstyle的 代码风格检查工具,这个工具受到java checkstyleGolint 的启发
  • go-cleanarch :Go-cleanarch用于检查代码是否符合简洁架构的相关法则,比如依赖法则以及你的Go语言项目中各个库的交互情况
  • go-critic :  源代码检查器,它带来了目前其他检查器没有实现的检查。
  • go-mod-outdated :  一种查找Go项目中过时的依赖关系的简单方法。
  • go-outdated :  用于显示过时的库的命令行工具
  • goast-viewer :   基于WebGolang AST 可视化工具.
  • GoCover.io :GoCover.io可以查看任何go语言软件包的代码覆盖率
  • goimports :  用于自动修复,添加,删除你的 Go 语言项目的 import
  • golines : 自动缩短Go 代码中长行的格式化器。
  • GoLint :  针对 Go 语言源码的lint 工具
  • Golint online :  使用golintGitHub, Bitbucket 以及Google Project Hosting上面的Go语言源文件进行静态分析
  • GoPlantUML :  生成文本plantUML图的库和CLI,包含结构和接口的信息以及它们之间的关系。
  • goreturns :   添加零值return 语句以符合函数返回值类型
  • gosimple : 针对 Go 语言的lint工具,专注于简化代码
  • gostatus :   命令行工具,查看当前Go 语言软件包仓库的状态
  • lint :   运行linters作为Go测试的一部分。
  • php-parser : Go编写的PHP解析器。
  • staticcheck :  -staticcheckGo vet阶段中执行大量的静态分析检查,类似ReSharper for C#这样的工具。
  • tarp :tarp可以在Go源代码中找到无需直接单元测试的函数和方法
  • tickgit :  用于显示代码注释TODO(任何语言)的CLI和go包,并应用git blam来识别作者
  • unconvert :   从go语言代码中移除不必要的类型转换
  • unused :  unused会检查 Go 语言代码中没有用到的常量,变量,函数和类型
  • validate :  根据结构体tag自动验证结构体字段

编辑器插件

  • Go plugin for JetBrains IDEs :JetBrains IDEs 使用的Go语言插件
  • go-language-server :  用于将VSCode go 扩展变为支持语言服务器协议的GO代码封装库
  • go-mode : GNU/EmacsGo语言模式
  • go-plus :  供Atom 使用的自动补全、格式化、语法检查、lintVetting 的软件包
  • gocode : go语言自动补全
  • goimports-reviser : 用于导入的格式化工具。
  • goprofiling :   这个扩展为VS Code增加了对Go语言的基准分析支持。
  • GoSublime : SublimeText 2 使用的 Go 语言插件,支持代码补全以及一些类似IDE 的特性
  • gounit-vim :   Vim插件,用于根据函数或方法的签名生成Go测试。
  • theia-go-extension :  为Theia IDE提供Go语言支持。
  • vim-compiler-go :Vim插件,在保存时高亮语法错误
  • vim-go : Vim使用的Go 语言开发插件
  • vscode-go : Visual Studio Code (VS Code) : 使用的一个扩展,为Go 语言提供了支持
  • Watch :  当文件变动时,在acme窗口中执行命令

Go  代码生成工具

  • generic : 针对Go的灵活数据类型。
  • genny :  为Go提供优雅的泛型。
  • gocontracts :   通过同步代码和文档,将按合约设计引入Go
  • gonerics : Go泛型。
  • gotests :  根据源代码生成Go测试代码。
  • gounit :  使用你自己的模板生成Go 测试代码。
  • hasgo :  为slices生成Haskell的启发函数。
  • re2dfa :   将正则表达式转换为有限状态机并输出Go源代码。
  • TOML-to-Go :  在浏览器中将TOML转成Go 类型。
  • xgen : XSD (XML Schema Definition)  解析器,能够生成Go/C/Java/Rust/Typescript代码

Go工具

  • colorgo :  对 Go 命令进行了封装,用于为Go build的输出结果添加颜色
  • depth :  通过分析导入的库,将某个包的依赖关系用树状结构进行显示
  • gb :  针对Go语言的项目的构建工具,
  • generator-go-lang :  生成Yeoman : 新项目的生成器 。
  • gilbert :  Go项目的构建系统和任务运行器。
  • go-callvis :   使用dot语言将你的 Go 语言程序函数调用关系可视化
  • go-james :  Go项目骨架创建服务,无需手动设置即可构建和测试你的项目。
  • go-pkg-complete :Bash代码补全,用于GowGo.
  • go-swagger :  为 Go 语言实现的Swagger 2.0.
  • godbg : Rusts dbg!宏的实现,用于在开发过程中进行快速和简单的调试。
  • gomodrun :  用于执行和缓存包含在go.mod文件中的二进制文件的Go工具。
  • gothanks :GoThanks 会自动为你的go.mod github依赖项加星。
  • igo :  igogo的转换器(Go语言的新语言特性!)。
  • OctoLinker :  - 使用github 的浏览器插件OctoLinker高效浏览Go 语言文件
  • richgo :  用文本装饰丰富go代码测试输出。
  • rts :  RTS(是response to struct的缩写)用于根据服务器的响应生成Go语言结构体
  • typex :  检查Go类型和它们的转换依赖关系,或者将结果导出为TypeScript值对象(或类型)声明。

软件包

go语言开发的软件工具

devops 工具

  • aptly : aptly是一个Debian库管理工具
  • aurora :   跨平台、基于web的Beanstalkd队列服务器控制台
  • awsenv :  加载Amazon (AWS) 环境变量作为profile文件
  • Blast : 一个简单的API负载测试和批量作业管理的工具。
  • bombardier :  快速的、跨平台的HTTP基准工具.
  • bosun :  基于时间序列的告警框架
  • cassowary :   用Go编写的现代跨平台HTTP负载测试工具。
  • DepCharge :  帮助管理大型项目中众多依赖关系的命令。
  • Dockerfile-Generator :  包含go代码库和可执行文件,其可以利用各种输入管道信息生成有效的Dockerfiles。
  • dogo :  监控源文件中的变化并自动编译和执行
  • drone-jenkins : 可以通过二进制文件、docker或者Drone CI来触发下游Jenkins 任务,
  • drone-scp :  通过SSH 拷贝文件及可执行程序,可以通过二进制文件、docker 或者Drone CI来使用
  • Dropship :  通过cdn部署代码的工具
  • easyssh-proxy :   一个用于通过 ssh 远程执行命令以及可通过ProxyCommand 来进行 SCP 下载
  • fac :  用于修复git合并冲突的命令行用户界面。
  • gaia :   利用任何编程语言都可以构建强大的管道的库。
  • Gitea :  社区驱动的Gogsfork
  • gitea-github-migrator :    将所有的` GitHub 仓库、问题、里程碑和标签迁移到 Gitea 实例中。
  • go-furnace :  用Go编写的托管解决方案。在AWS、GCPDigitalOcean上轻松部署你的应用程序。
  • go-selfupdate :   让你的Go 语言程序可以自我更新
  • gobrew : Gobrew让你可以在不同版本的Go 语言之间轻松切换
  • godbg :  基于Web 的前端gdb 应用程序
  • Gogs :  自我托管的Git服务
  • gonative : 为Go 语言创建可以在多平台进行交叉编译的工具,使用CGo-enabled标准库
  • govvv :   对Go build进行了封装,用于轻松的向 Go 语言二进制文件中添加版本信息
  • gox :  非常简单的Go语言交叉编译工具
  • goxc : Go 语言构建工具,专注于交叉编译和打包
  • grapes :   一款轻量级工具,用于通过ssh发送命令
  • GVM : GVM提供了用于管理Go语言版本的接口
  • Hey :Hey是一个微型程序,用于向web 应用发送负载
  • jcli :  Jenkins CLI允许你以一种简单的方式管理你的Jenkins
  • kala :  极简、现代的、高效的任务调度
  • kcli :  用于检查kafka主题/分区/消息的命令行工具。
  • kubernetes :  来自Google的容器集群管理器
  • lstags :  在不同的注册表中同步Docker镜像的工具和API
  • lwc : UNIX wc命令的实时更新版本。
  • manssh : manssh是一个命令行工具,用于轻松管理ssh别名配置。
  • Moby :  为容器生态系统创建的一个合作项目,用于构建基于容器的系统
  • Mora :  REST 服务器,用于获取MonGoDB文件和元数据
  • ostent :  收集并显示系统数据,可以作Graphite和/或InfluxDB 的中间件
  • Packer :Packer通过单一的配置文件,为不同的平台创建独立镜像
  • Pewpew :  灵活的HTTP命令行压力测试工具
  • Pomerium :  Pomerium是一个身份感知的访问代理。
  • Rodent : Rodent 帮助你管理Go语言版本、项目、和追踪依赖
  • s3-proxy : S3代理,具有GET、PUTDELETE方法和认证(OpenID ConnectBasic Auth)。
  • s3gof3r :  为了从Amazon S3中高速存取大型对象而特别优化的库
  • s5cmd :  快速的S3 和本地文件系统执行工具。
  • Scaleway-cli :  通过命令行来管理 裸金属服务器 (和使用Docker一样容易)。
  • script :  在Go中轻松编写类似shell的脚本,用于DevOps和系统管理任务。
  • sg :  对一组HTTP 钩子(如ab)进行基准测试,可以使用每次调用之间的响应代码和数据,根据其之前的响应来确定特定的服务器压力。
  • skm :  SKM是一个简单而强大的SSH密钥管理器,它可以帮助您轻松管理您的多个SSH密钥。
  • StatusOK :   监控你的网站和REST APIs。如果你的服务器挂了或是响应时间超过预期,则会通过Slack,E-mail来通知你
  • terraform-provider-openapi :Terraform provider插件,可以在运行时根据包含API定义的OpenAPI文档(以前称为swagger文件)动态配置自己。
  • traefik :  能对接多个后端的反向代理和负载均衡器。
  • trubka : CLI工具,用于管理Apache Kafka集群并排除其故障,能够向Kafka发布/消费协议缓冲区和纯文本事件。
  • uTask :  自动化引擎,可对yaml中声明的业务流程进行建模和执行。
  • Vegeta :  HTTP 加载测试工具和代码库
  • webhook :  允许用户创建HTTP钩子,并在服务器上执行命令
  • Wide :  基于Web 的IDE,为使用Go语言的团队设计
  • winrm-cli :  命令行工具,可以远程在windows机器上执行命令

其他软件库和软件包

  • Better Go Playground :  具有语法高亮、代码补全等功能的playground
  • borg :  基于终端的搜索引擎,用于搜索bash代码片段
  • boxed :  基于Dropbox的博客引擎
  • Cherry : Go语言实现的一个微型网络聊天服务器
  • Circuit : Circuit是一个可编程的PaaS以及IaaS,用于管理、发现以及编排各种云端应用的服务及主机
  • Comcast :   模拟网络波动情况下的网络数据连接
  • confd :  使用etcdconsul来管理本地应用的配置文件
  • croc :    轻松安全地将文件或文件夹从一台计算机发送到另一台计算机。
  • Docker :  一个为开发者和系统管理员提供的针对分布式应用的开源平台
  • Documize :  维基软件,可以使用SaaS工具提供的数据
  • dp :  与区块链进行数据交换的SDK,开发者可以轻松进行DAPP的开发。
  • drive :  命令行版本的Google Drive客户端。
  • Duplicacy :  跨平台网络和云备份工具
  • Gebug : - 一个通过启用Debugger和热加载功能,让Docker容器化后的Go应用调试变得超级简单。
  • gfile : 无需任何第三方工具通过WebRTC在两台电脑之间安全传输文件。
  • Go Package Store :   一个可以显示你的GoPATH 路径下Go软件包的应用
  • go-peerflix : 视频流下载客户端。
  • GoBoy :   用Go编写的任天堂游戏机颜色模拟器。
  • gocc : Go语言编写的Go语言编译器工具集
  • GoDocTooltip :  用来显示go语言文档的chrome浏览器插件
  • GoLand :   跨平台、全功能Go 语言集成开发环境
  • Gor :  Http 流量复制工具,用于将生产环境的流量在开发环境进行重放
  • Guora :  一个用Go编写的类似于Quora的问答网络应用。
  • hugo :  - 快速、现代的静态web引擎
  • ide :  为Go语言设计可以在浏览器的IDE
  • ipe : Go语言编写的开源Pusher服务器,兼容Pusher客户端。
  • joincap :   用于合并多个pcap文件的命令行工具。
  • Juju :   服务部署及编排工具,,支持EC2,Azure,Openstack,MAAS 等等
  • Leaps :   结对编程服务,使用操作变换来避免冲突。
  • lgo :   使用Jupyter进行交互式编程。它支持代码补全、代码检查,100%兼容Go
  • limetext : Lime Text 是一个强大又优雅的编辑器,主要使用Go 语言开发,意在成为Sublime Text的继承者。
  • LiteIDE : LiteIDE 是一个简单、开源、跨平台的Go语言IDE
  • mockingjay : 伪HTTP服务器,通过单一配置文件构造访问请求。同时你还可以让服务器提升负载,以进行更加符合现实情况的性能测试
  • myLG :Go语言编写的命令行网络诊断工具
  • naclpipe :   简单的基于NaCL EC25519 的加密管道工具
  • nes : Go 语言编写的任天堂(NES)模拟器
  • orange-cat : Go语言编写的Markdown预览工具
  • Orbit :   运行命令和从模板生成文件的简单工具。
  • peg :  Peg(Parsing Expression Grammar)是一个Packrat parser generator的实现
  • restic :  解耦备份程序
  • scc :   一个非常快速准确的代码计数器,具有复杂度计算和COCOMO估计功能。
  • Seaweed File System :  快速、简单、可扩展的分布式文件系统,具有O(1)的磁盘查找效率
  • shell2http :  通过HTTP服务器执行shell命令行(用于原型验证或远程控制)。
  • snap :  强大的遥测框架
  • Snitch :  当通过Tsuru部署应用程序时,可以简单快速的通知团队的工具
  • Stack Up :Stack Up是一个超级简单的开发工具,就好比是服务器网络的make工具
  • syncthing :   开源、去中心化的文件同步工具和协议
  • tcpprobe :  -TCP工具,用于网络性能和路径监控,包括套接字统计等。
  • term-quiz :  终端测试库。
  • toxiproxy :  用于自动化测试中模拟网络和系统状态的代理服务。
  • tsuru :  可扩展的、开源的SAAS 软件
  • vaku :  为Vault中基于文件夹的功能如复制、移动和搜索提供CLIAPI
  • vFlow :  高性能、可扩展、可靠的IPFIX,sFlowNetflow集合.
  • wellington :Sass项目管理工具, 通过支持一些功能(例如Compass)扩展了这门语言
  • woke :   检测源代码中的排他性代码段。

微信中不支持外链,想查看各资源的详情,请点击阅读原文或下方链接打开: https://github.com/jobbole/awesome-go-cn

图片

分享、点赞和在看

支持我们分享更多好文章,谢谢!

112806 万 Star! Go 语言资源大全(下)

root

这个人很懒,什么都没留下

文章评论