awesome-go
A curated list of amazingly awesome Go libraries, resources and shiny things.
https://github.com/abaron/awesome-go
Last synced: 4 days ago
JSON representation
Audio and Music
- EasyMIDI - |
- flac - frills native Go FLAC decoder that decodes FLAC files into byte slices. | 82 | 9 | - |
- flac - |
- gaad - |
- go-sox - |
- go_mediainfo - |
- gosamplerate - |
- malgo - |
- minimp3 - |
- mix - based Go-native audio mixer for music apps. | 91 | 17 | - |
- mp3 - |
- music-theory - |
- PortAudio - |
- portmidi - |
- taglib - |
- vorbis - |
- waveform - |
- id3v2 - |
- Oto - level library to play sound on multiple platforms. | 365 | 24 | - |
Authentication and OAuth
- authboss
- branca
- cookiestxt
- go-jose
- go-oauth2-server - compliant, OAuth2 server written in Golang. | 1,205 | 171 | 13 |
- gologin
- gorbac - based access control (RBAC) implementation in Golang. | 866 | 121 | 2 |
- goth
- httpauth
- jwt
- jwt
- jwt-auth
- jwt-go
- oauth2
- osin
- paseto - Agnostic Security Tokens (PASETO). | 208 | 9 | 0 |
- permissions2
- rbac
- securecookie
- session - GAE). | 87 | 8 | 5 |
- sessiongate-go
- sessions
- signedvalue
- casbin
- loginsrv
Benchmarks
Other Software
- autobench - | - | - |
- go-benchmark-app - benchmark tool mixed with Аb, Wrk, Siege tools. Gathering statistics and various parameters for benchmarks and comparison results. | - | - | - |
- go-benchmarks - | - | - |
- go-http-routing-benchmark - | - | - |
- go-web-framework-benchmark - | - | - |
- go_serialization_benchmarks - | - | - |
- golang-micro-benchmarks - | - | - |
- golang-sql-benchmark - | - | - |
- gospeed - benchmarks for calculating the speed of language constructs. | - | - | - |
- kvbench - | - | - |
- skynet - | - | - |
- speedtest-resize - | - | - |
- gocostmodel - | - | - |
Bot Building
- go-chat-bot
- go-sarah
- go-tgbot - based router and middleware. | 82 | 3 | 2 |
- Golang CryptoTrading Bot - based trading bot for cryptocurrency exchanges. | 181 | 41 | 10 |
- govkbot
- hanu
- margelet
- micha
- slacker
- tbot
- telebot
- Tenyks
- Kelp - making bot for the Stellar DEX. Works out-of-the-box, written in Golang, compatible with centralized exchanges and custom trading strategies. | 134 | 36 | 28 |
- telegram-bot-api
Code Analysis
Routers
- GoCover.io - | - | - |
- Golint online - | - | - |
- goreturns - value return statements to match the func return types. | - | - | - |
- gosimple - | - | - |
- staticcheck - | - | - |
- unused - | - | - |
- apicompat - | - | - |
- dupl - | - | - |
- errcheck - | - | - |
- gcvis - | - | - |
- go-checkstyle - | - | - |
- go-cleanarch - cleanarch was created to validate Clean Architecture rules, like a The Dependency Rule and interaction between packages in your Go projects. | - | - | - |
- go-critic - | - | - |
- go-mod-outdated - | - | - |
- go-outdated - | - | - |
- goast-viewer - | - | - |
- GoLint - | - | - |
- gostatus - | - | - |
- lint - | - | - |
- php-parser - | - | - |
- unconvert - | - | - |
- validate - | - | - |
- tarp - | - | - |
- goimports - | - | - |
Command Line
Advanced Console UIs
- gommon/color - | - | - |
- asciigraph - | - | - |
- aurora - | - | - |
- cfmt - | - | - |
- chalk - | - | - |
- color - | - | - |
- colourize - | - | - |
- ctc - invasive cross-platform terminal color library does not need to modify the Print method. | - | - | - |
- go-ataman - | - | - |
- go-colorable - | - | - |
- go-colortext - | - | - |
- go-isatty - | - | - |
- go-prompt - prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit). | - | - | - |
- gocui - | - | - |
- gookit/color - | - | - |
- mpb - | - | - |
- progressbar - safe progress bar that works in every OS. | - | - | - |
- simpletable - | - | - |
- tabby - | - | - |
- tabular - | - | - |
- termbox-go - platform text-based interfaces. | - | - | - |
- termdash - go** and inspired by termui. | - | - | - |
- termui - go** and inspired by blessed-contrib. | - | - | - |
- uilive - | - | - |
- uiprogress - | - | - |
- uitable - | - | - |
- termtables - tables](https://github.com/tj/terminal-table) for simple ASCII table generation as well as providing markdown and HTML output. | - | - | - |
Standard CLI
- hiboot cli - | - | - |
- argparse - | - | - |
- argv - | - | - |
- cli - rich and easy to use command-line package based on golang struct tags. | - | - | - |
- cli - | - | - |
- cli-init - | - | - |
- cobra - | - | - |
- commandeer - friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags. | - | - | - |
- complete - | - | - |
- docopt.go - line arguments parser that will make you smile. | - | - | - |
- env - based environment configuration for structs. | - | - | - |
- flag - | - | - |
- flaggy - | - | - |
- flagvar - | - | - |
- go-arg - based argument parsing in Go. | - | - | - |
- go-commander - | - | - |
- go-flags - | - | - |
- go-getoptions - | - | - |
- gocmd - | - | - |
- kingpin - | - | - |
- liner - like library for command-line interfaces. | - | - | - |
- mitchellh/cli - line interfaces. | - | - | - |
- mow.cli - | - | - |
- pflag - in replacement for Go's flag package, implementing POSIX/GNU-style --flags. | - | - | - |
- readline - Readline under MIT license. | - | - | - |
- sand - | - | - |
- sflags - | - | - |
- strumt - | - | - |
- ukautz/clif - | - | - |
- urfave/cli - | - | - |
- wlog - platform color and concurrency. | - | - | - |
- wmenu - | - | - |
- climax - | - | - |
Conferences
Other Software
Configuration
Advanced Console UIs
- gone/jconf
- config
- config
- configure
- confita
- conflate
- env
- envcfg - marshaling environment variables to Go structs. | 90 | 6 | 0 |
- envconf
- envconfig
- envh
- gcfg - style configuration files into Go structs; supports user-defined types and subsections. | 112 | 30 | 3 |
- go-up
- goConfig
- godotenv
- gofigure
- gookit/config
- hjson
- ingo - like config file. | 23 | 3 | 0 |
- ini
- joshbetz/config
- kelseyhightower/envconfig
- mini - style configuration files. | 19 | 15 | 1 |
- sprbox - environment aware toolbox factory and agnostic config parser (YAML, TOML, JSON and Environment vars). | 3 | 0 | 0 |
- store
- viper
- xdg - spec/basedir-spec-latest.html). | 29 | 1 | 0 |