Go App Stack

> 自分向け備忘録

## Vendoring

- [tools/godep](https://github.com/tools/godep) - dependency tool for go.
- [kardianos/govendor](https://github.com/kardianos/govendor) - Go vendor tool that works with the standard vendor file.
- [govend/govend](https://github.com/govend/govend) - A simple tool to vendor Go package dependencies. It's like "go get" for vendoring.

## Configure

- [kelseyhightower/envconfig](https://github.com/kelseyhightower/envconfig) - Golang library for managing configuration data from environment variables.

## Logger

- [apex/log](https://github.com/apex/log) - Structured logging package for Go.

## Web Framework

- [celrenheit/lion](https://github.com/celrenheit/lion) - Lion is a fast HTTP router for building modern scalable modular REST APIs in Go.

## Handler

## CLI Framework

- [spf13/cobra](https://github.com/spf13/cobra) - A Commander for modern Go CLI interactions.

## Serialize

- []() - 

## Recovering

- [dre1080/recover](https://github.com/dre1080/recover) - Go HTTP middleware that catches any panics and serves a proper error response.
- [mitchellh/panicwrap](https://github.com/mitchellh/panicwrap) - panicwrap is a Go library for catching and handling panics in Go applications.
- [deferpanic/deferclient](https://github.com/deferpanic/deferclient) - Defer Panic Client.

## Generator

- [nats-io/nuid](https://github.com/nats-io/nuid) - NATS Unique Identifiers.
- [sony/sonyflake](https://github.com/sony/sonyflake) - A distributed unique ID generator inspired by Twitter's Snowflake.

## Auth

- [SermoDigital/jose](https://github.com/SermoDigital/jose) - A comprehensive set of JWT, JWS, and JWE libraries.

## Validator

- [go-playground/validator](https://github.com/go-playground/validator) - Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving.
- [lestrrat/go-jsval](https://github.com/lestrrat/go-jsval) - Validator toolset, aimed to be used with JSON Schema.

## Parser

- []() - 

## Metrics

- [bmhatfield/go-runtime-metrics](https://github.com/bmhatfield/go-runtime-metrics) - Collect Golang Runtime Metrics, outputting to a stats handler.
- [fukata/golang-stats-api-handler](https://github.com/fukata/golang-stats-api-handler) - Golang cpu, memory, gc, etc information api handler.
- [divan/expvarmon](https://github.com/divan/expvarmon) - TermUI based monitor for Go apps using expvars (/debug/vars). Quickest way to monitor your Go app(s).

## Utils

- [alioygur/godash](https://github.com/alioygur/godash) - A utility library in Go inspired by lodash.

## Testing

- [stretchr/testify](https://github.com/stretchr/testify) - A sacred extension to the standard go testing package.
- [h2non/gock](https://github.com/h2non/gock) - Versatile HTTP mocking made easy in Go.
- [icrowley/fake](https://github.com/icrowley/fake) - Fake data generator for Go (Golang).
- [ory-am/dockertest](https://github.com/ory-am/dockertest) - Test your Go code against ephemeral elastic search, postgres, nqs, mysql, mongodb, ... docker images on all platforms using dockertest!
- [gavv/httpexpect](https://github.com/gavv/httpexpect) - Go module that helps to write nice tests for your HTTP API.

## Starter

- [jpillora/overseer](https://github.com/jpillora/overseer) - Monitorable, gracefully restarting, self-upgrading binaries in Go (golang).
- [fvbock/endless](https://github.com/fvbock/endless) - Zero downtime restarts for go servers (Drop in replacement for http.ListenAndServe).
- [braintree/manners](https://github.com/braintree/manners) - A polite Go HTTP server that shuts down gracefully.

## Debug

- [derekparker/delve](https://github.com/derekparker/delve) - Delve is a debugger for the Go programming language.
- [mailgun/godebug](https://github.com/mailgun/godebug) - A cross-platform debugger for Go.
- [maruel/panicparse](https://github.com/maruel/panicparse) - Crash your app in style (Golang).
- [palantir/stacktrace](https://github.com/palantir/stacktrace) - Stack traces for Go errors.

## Template

- [valyala/quicktemplate](https://github.com/valyala/quicktemplate) - Fast, powerful, yet easy to use template engine for Go. Optimized for speed, zero memory allocations in hot paths. Up to 20x faster than html/template.
- [flosch/pongo2](https://github.com/flosch/pongo2) - Django-syntax like template-engine for Go.
- [CloudyKit/jet](https://github.com/CloudyKit/jet) - Jet template engine

## Client

- [google/go-github](https://github.com/google/go-github) - Go library for accessing the GitHub API.
- [ChimeraCoder/anaconda](https://github.com/ChimeraCoder/anaconda) - A Go client library for the Twitter 1.1 API.
- [huandu/facebook](https://github.com/huandu/facebook) - A Facebook Graph API SDK Library For Golang.

## Code

- [golang/lint](https://github.com/golang/lint) - This is a linter for Go source code.

## Service

- [CodeBeat](https://codebeat.co/) - We help developers write clean code.
- [Go Report Card](https://goreportcard.com/) - Go Report Card was initially developed during Gopher Gala 2015. It is free, open source and run by volunteers. If you feel like there is something that could be improved, we encourage you to open an issue or contribute on GitHub!