将想要的状态,
以“彩色”在大脑中呈现!

go工具

ProMonkey阅读(335)

go工具

  • colorgo - go用于彩色go build输出的命令周围的包装器。
  • depth - 任何包通过分析进口的依赖可视化树。
  • gb - Go编程语言的易于使用的基于项目的构建工具。
  • generator-go-lang - 一个Yeoman生成器,用于启动新的Go项目。
  • gilbert - Go项目的构建系统和任务运行器。
  • go-callvis - 使用点格式可视化Go程序的调用图。
  • go-james - Go项目框架创建者,无需手动设置即可构建和测试项目。
  • go-pkg-complete - go和wgo的Bash完成。
  • go-swagger - Go的 Swagger 2.0实现。Swagger是RESTful API的简单但功能强大的表示形式。
  • godbg - Rustsdbg!宏的实现,可在开发过程中快速轻松地进行调试。
  • gothanks - GoThanks自动为您的go.mod github依赖项加注星标,以这种方式向其维护者发送一些爱意。
  • OctoLinker - 使用GitHub的OctoLinker浏览器扩展可以高效地浏览go文件。
  • richgo - go test使用文本装饰丰富输出。
  • rts - RTS:对struct的响应。从服务器响应生成Go结构。

DevOps工具

ProMonkey阅读(363)

DevOps工具

  • aptly - 适当地是Debian仓库管理工具。
  • aurora - 基于Web的跨平台Beanstalkd队列服务器控制台。
  • awsenv - 小型二进制文件,用于为配置文件加载Amazon(AWS)环境变量。
  • Blast - 用于API负载测试和批处理作业的简单工具。
  • bombardier - 快速的跨平台HTTP基准测试工具。
  • bosun - 时间序列警报框架。
  • DepCharge - 帮助协调跨大型项目中许多依赖项的命令执行。
  • Dockerfile-Generator -一个go库和一个可执行文件,可使用各种输入通道生成有效的Dockerfile。
  • dogo - 监视源文件中的更改,并自动编译和运行(重新启动)。
  • drone-jenkins - 使用二进制,泊坞窗或Drone CI触发下游Jenkins作业。
  • drone-scp - 使用二进制文件,docker或Drone CI通过SSH复制文件和工件。
  • Dropship - 通过CDN部署代码的工具。
  • easyssh-proxy - Golang软件包,可通过SSH和SCP下载通过轻松地远程执行ProxyCommand。
  • fac - 修复git合并冲突的命令行用户界面。
  • gaia - 使用任何编程语言构建功能强大的管道。
  • Gitea - Gogs的叉子,完全由社区驱动。
  • gitea-github-migrator - 将所有GitHub存储库,问题,里程碑和标签迁移到Gitea实例。
  • go-furnace - 用Go编写的托管解决方案。在AWS,GCP或DigitalOcean上轻松部署应用程序。
  • go-selfupdate - 使Go应用程序能够自我更新。
  • gobrew - 使用 gobrew,您可以轻松地在多个版本的go之间切换。
  • godbg - 基于Web的gdb前端应用程序。
  • Gogs - Go编程语言中的自托管Git服务。
  • gonative - 创建Go的构建的工具,该工具可以交叉编译到所有平台,同时仍使用支持Cgo的stdlib软件包版本。
  • govvv - “构建”包装器可轻松将版本信息添加到Go二进制文件中。
  • gox - 简单易用,没有多余的装饰Go交叉编译工具。
  • goxc - Go的构建工具,着重于交叉编译和打包。
  • grapes - 轻量级工具,旨在通过ssh轻松分发命令。
  • GVM - GVM提供了管理Go版本的界面。
  • Hey - Hey 这是个很小的程序,它将一些负载发送到Web应用程序。
  • jcli - Jenkins CLI使您可以轻松管理Jenkins。
  • kala - 简单,现代和高性能的工作计划程序。
  • kcli - 用于检查kafka主题/分区/消息的命令行工具。
  • kubernetes - Google的Container Cluster Manager。
  • lstags - 用于在不同注册表之间同步Docker映像的工具和API。
  • lwc - UNIX wc命令的实时更新版本。
  • manssh - manssh是用于轻松管理ssh别名配置的命令行工具。
  • Moby - 容器生态系统的协作项目,用于组装基于容器的系统。
  • Mora - 用于访问MongoDB文档和元数据的REST服务器。
  • ostent - 收集并显示系统指标,并可选地中继到Graphite和/或InfluxDB。
  • Packer - Packer是一个工具,可从一个源配置为多个平台创建相同的机器映像。
  • Pewpew - 灵活的HTTP命令行压力测试仪。
  • Pomerium - Pomerium是一个身份识别访问代理。
  • Rodent - Rodent 可帮助您管理Go版本,项目和跟踪依赖关系。
  • s3gof3r - 经过优化的小型实用程序/库,用于将大型对象高速传输到Amazon S3和从Amazon S3传输出来。
  • Scaleway-cli - cli-从命令行管理BareMetal服务器(与Docker一样容易)。
  • script - 轻松在Go中为DevOps和系统管理任务编写类似shell的脚本。
  • sg - 对一组HTTP端点(例如ab)进行基准测试,并可能根据每次响应之间的先前响应,在每次调用之间使用响应代码和数据来处理特定的服务器压力。
  • skm - SKM是一个简单而强大的SSH密钥管理器,它可以帮助您轻松管理多个SSH密钥!
  • StatusOK - 监视您的网站和REST API。当服务器关闭或响应时间超出预期时,通过Slack,电子邮件通知。
  • terraform-provider-openapi - Terraform提供程序插件,可在运行时根据包含公开API定义的OpenAPI文档(以前称为swagger文件)动态配置自身。
  • traefik - 反向代理和负载平衡器,支持多个后端。
  • uTask - 自动化引擎,用于建模和执行yaml中声明的业务流程。
  • Vegeta - HTTP负载测试工具和库。超过9000!
  • webhook - 工具,允许用户创建在服务器上执行命令的HTTP端点(挂钩)。
  • Wide - 使用Golang的团队基于Web的IDE。
  • winrm-cli - 在Windows计算机上远程执行命令的Cli工具。

go生成工具

ProMonkey阅读(269)

go生成工具

  • generic - Go的灵活数据类型。
  • genny - Go的优雅仿制药。
  • gocontracts - 通过使代码与文档同步来将按合同设计引入Go。
  • gonerics - Go中的惯用泛型。
  • gotests - 从您的源代码生成Go测试。
  • gounit - 使用您自己的模板生成Go测试。
  • hasgo - 为您的切片生成Haskell启发的函数。
  • re2dfa - 将正则表达式转换为有限状态机并输出Go源代码。
  • TOML-to-Go - 在浏览器中立即将TOML转换为Go类型。

硬件

ProMonkey阅读(295)

Go + 硬件

此存储库是工具,软件包和教程的目录,可让您在硬件项目中介绍Go。

为什么选go?

  • Go可以针对主要在非实时嵌入式操作系统范围内的平台和体系结构。

    • 对Linux的ARMv5,ARMv6,ARMv7和ARMv8支持
    • ARMv7,ARMv8,x86对Android的支持
    • 实验性OpenWRT
  • 开箱即用的交叉编译故事。

    • 例如,运行GOOS=linux GOARCH=arm go build以从Mac或Windows机器为ARM / linux板构建二进制文件。不需要其他配置。
  • Go中内置的并发原语使得编写并发程序变得更加容易。

    • 在实施硬件控制器方面的强大优势。
    • 在实施网络设备方面的强大优势。
  • Go是垃圾收集语言,但是自Go 1.4起,垃圾收集器的占用空间已得到显着改善。即使对于大堆,暂停时间也被定为10ms或更短,并且在非实时操作系统上并不是一个明显的缺点-OS调度程序的抢占性质比暂停时间更是一个主要问题。

  • Go的网络堆栈质量高且维护良好。网络是物联网的核心组件。

  • Go提供了现成的HTTP,HTTPS和HTTP / 2客户端/服务器实现。

    • 标准库可能缺少P2P协议的更高级别的实现,但是社区正在努力弥补这一空白。
    • 社区还投入时间来实施更新的以物联网为目标的网络协议,例如COAP。
  • 与其他高级编程语言(如Python和Java)不同,使用Go语言在Go中编写C绑定非常简单。从Go上下文中依赖现有的C / C ++库要容易得多。

    • 例如,portmidi绑定。请参阅源代码,以了解如何在同一个Go文件中混合和匹配Go和C代码。
  • 类似于C的语法使现有的IoT /嵌入式编程人员(大多熟练使用C语言)可以在无需过多了解该语言的情况下读写Go。

  • Go程序可编译为静态二进制文件,并且不需要主机(例如VM)上的运行时。部署是复制/粘贴二进制文件。

  • Go拥有强大的社区人物,从早期开始就从事硬件方面的工作。

    • Gobot在第一届GopherCon上首次亮相。
    • 社区已经提供了许多围绕硬件和机器人技术的库和框架。可以在go硬件上找到列表。
  • Go高效,快速且内存占用少。

  • 服务器和客户端(连接的设备或移动设备)之间的代码重用。

    • 例如,gRPC Go在服务器,Android,iOS和嵌入式Linux上开箱即用。

讲解

配套

控制器

  • devices - Go的高级设备/传感器软件包的存储库。
  • gobot - 具有各种平台API的高级Go软件包,可与流行的驱动程序进行通信,例如Arduino和Raspberry Pi上的GPIO,Leap Motion或Pebble。
  • go-gpio - Go的GPIO,不需要cgo。
  • embd - Go的嵌入式编程框架。
  • fadecandy - 基于OPC的抖动LED控制器
  • godrone - 用Go编写的高级Parrot AR Drone 2.0框架。
  • launchpad - Novation Launchpad的高级控制器库。
  • littlebits - 用于Go的littleBits控制器。它需要USB I/O 模块。
  • piCamera - 在GoLang中为Raspberry Pi相机捕获图像流
  • hwio - 松散地基于Arduino的ARM板的硬件库,例如Raspberry Pi和BeagleBone。
  • go-lepton - 将通过连接到Raspberry Pi SPI端口的FLIR Lepton上拍摄的图像通过WebSockets通过嵌入式HTTP服务器进行流式传输。
  • go-embedded - 对I2C,SPI,PWM,GPIO,ADC的嵌入式Linux支持
  • go-beaglebone - BeagleBone开源硬件的Go包
  • go-mavlink - Go的MAVLink协议实现(MAVLink用于控制无人机)
  • joystick - 一种轮询的API,用于读取连接的操纵杆的状态。
  • emgo - 一种用于对嵌入式系统(例如STM32 MCU)进行编程的类语言。
  • go-rpi-rgb-led-matrix - matrix-使用Raspberry Pi GPIO控制多达三个链的32x32或16x32 RGB LED显示
  • go-rpi-ws281x - 用于WS281X LED的Raspberry Pi PWM库的绑定
  • ghw - Golang硬件发现/检查库
  • sysinfo - 一个纯的Go库,提供Linux OS /内核/硬件系统信息。

信号处理,计算机视觉,图形,媒体

  • go-gl - Go的OpenGL绑定。
  • go-opc - Go的开放像素控件绑定。
  • go-opencv - Go的OpenCV绑定。
  • go-sox - Go的SoX绑定。
  • portaudio - Go的PortAudio绑定。
  • portmidi - Go的PortMidi绑定。
  • go-osc - 为Go打开声音控制(OSC)绑定。
  • openvg - 包装OpenVG API的2D图形库
  • lirc - Linux红外遥控器的Go Client。允许发送和接收IR命令。
  • gocv - Go的OpenCV 3+绑定。还支持OpenVINO。

网络,外围通讯

  • mdns - Go中的mDNS服务器和客户端实现。组播DNS可用于在本地网络上发现服务和消息,而无需使用权威DNS服务器。
  • gatt - 提供蓝牙低功耗GATT实施。
  • go.hid - 提供与USB人机接口设备的通信。
  • goble - Go的蓝牙低功耗(HM10)模块
  • serial - Go的串行端口通讯程序包
  • firmata - Go的Firmata客户
  • periph - 外设I / O在Go
  • go-ckb - Go中的Corsair ckb-daemon通信
  • ble - 适用于Linux / macOS的低功耗蓝牙通信包装器。

移动版(1.5或更高版本)

编辑器插件

ProMonkey阅读(292)

编辑器插件

  • Go plugin for JetBrains IDEs - 用于JetBrains IDE的 Go插件- 用于JetBrains IDE的 Go插件。
  • go-language-server - server-将VSCode go扩展名转换为支持language-server-protocol的语言服务器的包装器。
  • go-mode - GNU / Emacs的Go模式。
  • go-plus - plus-用于Atom的Go(Golang)软件包,可添加自动完成,格式设置,语法检查,整理和审核。
  • gocode - Go编程语言的自动完成守护程序。
  • goprofiling - 此扩展在VS Code中添加了对Go语言的基准分析支持。
  • GoSublime - 文本编辑器SublimeText 3的Golang插件集合,提供代码完成和其他类似IDE的功能。
  • gounit-vim - Vim插件,用于基于函数或方法的签名生成Go测试。
  • theia-go-extension - Theia IDE的Go语言支持。
  • vim-compiler-go - Vim插件,突出显示保存时的语法错误。
  • vim-go - go-用于Vim的Go开发插件。
  • vscode-go - Visual Studio Code(VS Code)扩展,提供对Go语言的支持。
  • Watch - 在文件更改时以极致优势运行命令。

XML格式

ProMonkey阅读(290)

XML格式

用于处理XML的库和工具。

  • XML-Comp - 简单的命令行XML比较器,生成文件夹,文件和标签的差异。
  • xml2map - 用Golang编写的XML到MAP转换器。
  • xmlwriter - 基于libxml2的xmlwriter模块的过程XML生成API。
  • xpath - Go的XPath软件包。
  • xquery - XQuery使您可以使用XPath表达式从HTML / XML文档中提取数据。
  • zek - 从XML生成Go结构。

代码分析

ProMonkey阅读(277)

代码分析

  • apicompat - 检查Go项目的最新更改是否存在向后不兼容的更改。
  • dupl - 代码克隆检测工具。
  • errcheck - Errcheck是用于检查Go程序中未经检查的错误的程序。
  • gcvis - 实时可视化Go程序GC跟踪数据。
  • go-checkstyle - checkstyle是样式检查工具,例如java checkstyle。该工具的灵感来自java checkstyle golint。该样式涉及“ Go Code评论注释”中的某些要点。
  • go-cleanarch - 创建go-cleanarch是为了验证Clean Architecture规则,例如The Dependency Rule和Go项目中程序包之间的交互。
  • go-critic - 源代码linter,它带来了当前在其他linter中未实现的检查。
  • go-mod-outdated - 查找Go项目的过时依赖项的简便方法。
  • go-outdated - 显示过期软件包的控制台应用程序。
  • goast-viewer - 基于Web的Golang AST可视化工具。
  • GoCover.io - GoCover.io提供任何golang软件包即服务的代码覆盖率。
  • goimports - 自动修复(添加,删除)Go导入的工具。
  • GolangCI - GolangCI是针对GitHub拉取请求的自动化Golang代码审查服务。服务是开源的,对于开源项目是免费的。
  • GoLint - Golint是Go源代码的皮特。
  • Golint online - 使用golint软件包在线上GitHub,Bitbucket和Google Project Hosting上在线Go源文件。
  • GoPlantUML - 生成文本plantump类图的库和CLI,该类图包含有关结构和接口以及它们之间的关系的信息。
  • goreturns - 添加零值返回语句以匹配func返回类型。
  • gosimple - gosimple是Go源代码的linter,专门研究简化代码。
  • gostatus - 命令行工具,显示包含Go软件包的存储库的状态。
  • lint - 作为go测试的一部分运行棉绒。
  • php-parser - 用Go编写的PHP解析器。
  • staticcheck - staticcheck go vet用于类固醇,对ReSharper for C#等工具应用了大量的静态分析检查。
  • tarp - tarp在Go源代码中查找没有直接单元测试的函数和方法。
  • tickgit - CLI和go软件包,用于显示代码注释TODO(以任何语言显示)并应用git blame标识作者。
  • unconvert - 从Go源代码中删除不必要的类型转换。
  • unused - 未使用的检查将代码用于未使用的常量,变量,函数和类型。
  • validate - 自动验证带有标签的结构域。

路由器

ProMonkey阅读(274)

路由器

  • alien - 来自外层空间的轻巧快速的http路由器。
  • bellt - 一个简单的Go HTTP路由器。
  • Bone - 闪电快速HTTP多路复用器。
  • Bxog - Go的简单快速HTTP路由器。它适用于难度,长度和嵌套不同的路线。而且他知道如何根据接收到的参数创建URL。
  • chi - 基于net / context构建的小型,快速且富有表现力的HTTP路由器。
  • fasthttprouter - 高性能的路由器httprouter。第一个适合的路由器fasthttp。
  • FastRouter - 用Go编写的快速,灵活的HTTP路由器。
  • gocraft/web - Go中的Mux和中间件软件包。
  • Goji - Goji是一种简约且灵活的HTTP请求多路复用器,支持net/context。
  • goroute - 简单但功能强大的HTTP请求多路复用器。
  • GoRouter - GoRouter是服务器/ API微型框架,HTTP请求路由器,多路复用器,多路复用器,可为请求路由器提供中间件支持net/context。
  • gowww/router - 与net / http.Handler接口完全兼容的快速闪电HTTP路由器。
  • httprouter - 高性能路由器。使用它和标准的http处理程序可以形成一个非常高性能的Web框架。
  • httptreemux - 用于Go的高速,基于树的灵活HTTP路由器。来自httprouter的启发。
  • lars - Go的轻量级,快速且可扩展的零分配HTTP路由器,用于创建可自定义的框架。
  • mux - 强大的URL路由和golang调度。
  • ozzo-routing - 一种非常快速的Go(golang)HTTP路由器,支持正则表达式路由匹配。附带对构建RESTful API的全面支持。
  • pure - 是一种轻量级HTTP路由器,坚持使用std“ net / http”实现。
  • Siesta - 可组合的框架来写的中间件和处理程序。
  • vestigo - 用于go Web应用程序的高性能,独立的,HTTP兼容的URL路由器。
  • violetear - 转到HTTP路由器。
  • xmux - 基于高性能复用器httprouter与net/context支持。
  • xujiajun/gorouter - Go的简单快速HTTP路由器。

视窗

ProMonkey阅读(248)

视窗

  • d3d9 - Direct3D9的绑定。
  • go-ole - 用于golang的Win32 OLE实现。
  • gosddl - 从SDDL字符串转换为用户友好的JSON。SDDL由四部分组成:所有者,主要组,DACL,SACL。

Web框架

ProMonkey阅读(282)

Web框架

全栈Web框架。

  • aah - Go的可扩展,高性能,快速开发Web框架。
  • Aero - 用于Go的高性能Web框架,在Lighthouse中得分最高。
  • Air - Go的理想完善的Web框架。
  • Banjo - 非常简单,快速的Go Web框架。
  • Beego - beego是一种用于Go编程语言的开源高性能Web框架。
  • Buffalo - 带动Rails的生产力!
  • Echo - 高性能,简约的Go Web框架。
  • Fireball - 更具“自然”感觉的Web框架。
  • Flamingo - 可插拔Web项目的框架。包括模块概念并提供DI,Configareas,i18n,模板引擎,graphql,可观察性,安全性,事件,路由和反向路由等功能。
  • Flamingo Commerce - 使用干净的体系结构(如DDD以及端口和适配器)提供电子商务功能,可用于构建灵活的电子商务应用程序。
  • Gin - Gin是用Go!编写的Web框架。它具有类似于martini的API,性能更高,速度最高可提高40倍。如果您需要性能和良好的生产率。
  • Ginrpc - Gin参数自动绑定工具,gin rpc工具。
  • Gizmo - 微服务工具包使用的纽约时报。
  • go-json-rest - 设置RESTful JSON API的快速简便方法。
  • go-rest - Go的小巧的REST框架。
  • Goa - Goa提供了用于在Go中开发远程API和微服务的整体方法。
  • goa - goa就像golang的koajs一样,它是一个基于中间件的灵活,轻便,高性能和可扩展的Web框架。
  • Golax - 一个非Sinatra快速HTTP框架,支持Google自定义方法,深度拦截器,递归等。
  • Golf - 高尔夫是一种用于Go的快速,简单,轻便的微型Web框架。它具有强大的功能,除了Go标准库外没有其他依赖项。
  • Gondola - 用于更快地编写站点的Web框架。
  • gongular - 具有输入映射/验证和(DI)依赖注入的Fast Go Web框架。
  • hiboot - hiboot是具有自动配置和依赖项注入支持的高性能Web应用程序框架。
  • Macaron - Macaron是Go中的一种高效且模块化的Web设计框架。
  • mango - 芒果是Go的模块化Web应用程序框架,其灵感来自Rack和PEP333。
  • Microservice - 为创建微服务的,写在Golang框架。
  • neo - Neo是最小且快速的Go Web Framework,具有极其简单的API。
  • patron - Patron是遵循最佳云实践的微服务框架,其重点是生产力。
  • Resoursea - 用于快速编写基于资源的服务的REST框架。
  • REST Layer - 用于在数据库之上构建REST / GraphQL API的框架,主要通过代码进行配置。
  • Revel - Go语言的高效Web框架。
  • rex - Rex是一个基于大猩猩/ mux进行模块化开发的库,与.x完全兼容net/http。
  • rux - 用于构建golang HTTP应用程序的简单快速的Web框架。
  • tango - 用于Go的微型和可插入Web框架。
  • tigertonic - 受Dropwizard启发而构建JSON Web服务的Go框架。
  • uAdmin - 受Django启发的功能齐全的Golang Web框架。
  • utron - 用于Go(Golang)的轻量级MVC框架。
  • vox - 一个golang人类web框架,由兴亚启发严重。
  • WebGo - 用于构建Web应用程序的微框架;与处理程序链接,中间件和上下文注入。使用符合标准库的HTTP处理程序(即http.HandlerFunc)。
  • YARF - 快速的微框架,旨在以快速,简单的方式构建REST API和Web服务。

聚合实用在线工具

前往在线工具