hvuhsg / awesome-go-tools

A list of awesome Go tools. Not like awesome-go here only maintains golang awesome tools.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Awesome Go Tools

A curated list of awesome Go tools. Inspired by awesome-go.

Awesome

The most import is The go tools must be an command line tool, not lib

Contributing

Please take a quick gander at the contribution guidelines first. Thanks to all contributors.

If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file. Thank you!

Contents

Go Compile Helpers

Libraries for package and dependency management.

  • colorgo - A wrapper around go command for colorized go build output.
  • gigo - PIP-like dependency tool for golang, with support for private repositories and hashes.
  • godep - dependency tool for go, godep helps build packages reproducibly by fixing their dependencies.
  • gom - Go Manager - bundle for go.
  • goop - A simple dependency manager for Go (golang), inspired by Bundler.
  • gopm - Go Package Manager
  • gpm - Barebones dependency manager for Go.
  • johnny-deps - Minimal dependency version using Git
  • nut - Vendor Go dependencies
  • panicparse - Groups similar goroutines and colorizes stack dump.
  • VenGO - create and manage exportable isolated go virtual environments

Server Applications

Libraries for development servers.

  • algernon - HTTP/2 web server with built-in support for Lua, Markdown, GCSS and Amber.
  • Caddy - Caddy is an alternative, HTTP/2 web server that's easy to configure and use.
  • consul - Consul is a tool for service discovery, monitoring and configuration.
  • devd - A local webserver for developers
  • etcd - A highly-available key value store for shared configuration and service discovery.
  • GoAPI - A simple API writing framework with auto openapi docs.
  • nsq - A realtime distributed messaging platform
  • yakvs - A small, networked, in-memory key-value store.

Text Processing

Libraries for parsing and manipulating texts.

Code Analysis

Tools for error-checking, linting, etc.

  • doc - Go documentation tool that produces an alternative doc format.
  • dupl - A tool for code clone detection.
  • errcheck - Errcheck is a program for checking for unchecked errors in Go programs.
  • gcvis - Visualise Go program GC trace data in real time.
  • Go Metalinter - Metalinter is a tool to automatically apply all static analysis tool and report their output in normalized form.
  • goast-viewer - Web based Golang AST visualizer.
  • GoCover.io - GoCover.io offers the code coverage of any golang package as a service.
  • goimports - Tool to fix (add, remove) your Go imports automatically.
  • GoLint - Golint is a linter for Go source code.
  • Golint online - Lints online Go source files on GitHub, Bitbucket and Google Project Hosting using the golint package.
  • goreturns - Adds zero-value return statements to match the func return types.
  • gostatus - A command line tool, shows the status of repositories that contain Go packages.
  • validate - Automatically validates struct fields with tags.

DevOps Tools

Tools for testing and dependencies.

  • aptly - aptly is a Debian repository management tool
  • awsenv - a small binary that loads Amazon (AWS) environment variables for a profile
  • Boom - Boom is a tiny program that sends some load to a web application.
  • bosun - Time Series Alerting Framework
  • dogo - Monitoring changes in the source file and automatically compile and run (restart).
  • Dropship - A tool for deploying code via cdn.
  • EasySSH - Golang package for easy remote execution through SSH and SCP downloading.
  • Go Metrics - Go port of Coda Hale's Metrics library: https://github.com/codahale/metrics.
  • go-selfupdate - Enable your Go applications to self update.
  • gobrew - gobrew lets you easily switch between multiple versions of go.
  • godbg - Web-based gdb front-end application.
  • Gogs - A Self Hosted Git Service in the Go Programming Language.
  • gonative - Tool which creates a build of Go that can cross compile to all platforms while still using the Cgo-enabled versions of the stdlib packages.
  • gox - A dead simple, no frills Go cross compile tool.
  • goxc - build tool for Go, with a focus on cross-compiling and packaging.
  • hk - Heroku command-line interface in Go.
  • kala - Simplistic, modern, and performant job scheduler.
  • lstags - manipulates Docker images across different registries.
  • Mora - REST server for accessing MongoDB documents and meta data.
  • ostent - collects and displays system metrics and optionally relays to Graphite and/or InfluxDB
  • Packer - Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.
  • Rodent - Rodent helps you manage Go versions, projects and track dependencies.
  • s3gof3r - A small utility/library optimized for high speed transfer of large objects into and out of Amazon S3.
  • Vegeta - HTTP load testing tool and library. It's over 9000!
  • webhook - Tool which allows user to create HTTP endpoints (hooks) that execute commands on the server
  • Wide - A Web-based IDE for Teams using Golang.

Other Software

Tools that did not fit into any above categories.

  • boxed - Dropbox based blog engine
  • Circuit - Circuit is a programmable platform-as-a-service (PaaS) and/or Infrastructure-as-a-Service (IaaS), for management, discovery, synchronization and orchestration of services and hosts comprising cloud applications.
  • Comcast - Simulate bad network connections
  • confd - Manage local application configuration files using templates and data from etcd or consul.
  • Docker - An open platform for distributed applications for developers and sysadmins.
  • fleet - A Distributed init System.
  • Go Package Store - An app that displays updates for the Go packages in your GOPATH.
  • gocc - Gocc is a compiler kit for Go written in Go.
  • Gor - Http traffic replication tool, for replaying traffic from production to stage/dev environments in real-time.
  • hugo - A Fast and Modern Static Website Engine
  • Postman - Command-line utility for batch-sending email.

About

A list of awesome Go tools. Not like awesome-go here only maintains golang awesome tools.

License:MIT License