Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-go-plus
A curated list of awesome Go frameworks, libraries and software
https://github.com/jayecc/awesome-go-plus
Last synced: 5 days ago
JSON representation
-
Actor Model
- Ergo - An actor-based Framework with network transparency for creating event-driven architecture in Golang. Inspired by Erlang. ![stars](https://img.shields.io/badge/stars-3752-blue)
- Goakt - Fast and Distributed Actor framework using protocol buffers as message for Golang. ![stars](https://img.shields.io/badge/stars-192-blue)
- ProtoActor - Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin. ![stars](https://img.shields.io/badge/stars-5093-blue)
- Goakt - Fast and Distributed Actor framework using protocol buffers as message for Golang.
- Hollywood - Blazingly fast and light-weight Actor engine written in Golang. ![stars](https://img.shields.io/badge/stars-1234-blue)
- ProtoActor - Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin.
- Ergo - An actor-based Framework with network transparency for creating event-driven architecture in Golang. Inspired by Erlang. ![stars](https://img.shields.io/badge/stars-3669-blue) ![forks](https://img.shields.io/badge/forks-143-blue)
- Hollywood - Blazingly fast and light-weight Actor engine written in Golang. ![stars](https://img.shields.io/badge/stars-1208-blue) ![forks](https://img.shields.io/badge/forks-103-blue)
-
Artificial Intelligence
- chromem-go - Embeddable vector database for Go with Chroma-like interface and zero third-party dependencies. In-memory with optional persistence. ![stars](https://img.shields.io/badge/stars-327-blue)
- OllamaFarm - Manage, load-balance, and failover packs of Ollamas ![stars](https://img.shields.io/badge/stars-42-blue)
- langchaingo - LangChainGo is a framework for developing applications powered by language models. ![stars](https://img.shields.io/badge/stars-5101-blue)
- fun - The simplest but powerful way to use large language models (LLMs) in Go.
- fun - The simplest but powerful way to use large language models (LLMs) in Go.
- LocalAI - Open Source OpenAI alternative, self-host AI models. ![stars](https://img.shields.io/badge/stars-26700-blue)
- OllamaFarm - Manage, load-balance, and failover packs of Ollamas
- LocalAI - Open Source OpenAI alternative, self-host AI models.
- Ollama - Run large language models locally. ![stars](https://img.shields.io/badge/stars-100824-blue)
- chromem-go - Embeddable vector database for Go with Chroma-like interface and zero third-party dependencies. In-memory with optional persistence. ![stars](https://img.shields.io/badge/stars-282-blue) ![forks](https://img.shields.io/badge/forks-20-blue)
- langchaingo - LangChainGo is a framework for developing applications powered by language models. ![stars](https://img.shields.io/badge/stars-4576-blue) ![forks](https://img.shields.io/badge/forks-622-blue)
- Ollama - Run large language models locally. ![stars](https://img.shields.io/badge/stars-96539-blue) ![forks](https://img.shields.io/badge/forks-7667-blue)
-
Audio and Music
- gosamplerate - libsamplerate bindings for go. ![stars](https://img.shields.io/badge/stars-34-blue)
- id3v2 - ID3 decoding and encoding library for Go. ![stars](https://img.shields.io/badge/stars-340-blue)
- malgo - Mini audio library. ![stars](https://img.shields.io/badge/stars-302-blue)
- flac - Native Go FLAC encoder/decoder with support for FLAC streams. ![stars](https://img.shields.io/badge/stars-318-blue)
- gaad - Native Go AAC bitstream parser. ![stars](https://img.shields.io/badge/stars-127-blue)
- GoAudio - Native Go Audio Processing Library. ![stars](https://img.shields.io/badge/stars-353-blue)
- minimp3 - Lightweight MP3 decoder library. ![stars](https://img.shields.io/badge/stars-128-blue)
- PortAudio - Go bindings for the PortAudio audio I/O library. ![stars](https://img.shields.io/badge/stars-711-blue)
- gaad - Native Go AAC bitstream parser.
- GoAudio - Native Go Audio Processing Library.
- id3v2 - ID3 decoding and encoding library for Go.
- minimp3 - Lightweight MP3 decoder library.
- Oto - A low-level library to play sound on multiple platforms. ![stars](https://img.shields.io/badge/stars-1613-blue)
- PortAudio - Go bindings for the PortAudio audio I/O library.
- flac - Native Go FLAC encoder/decoder with support for FLAC streams. ![stars](https://img.shields.io/badge/stars-316-blue) ![forks](https://img.shields.io/badge/forks-44-blue)
- gosamplerate - libsamplerate bindings for go. ![stars](https://img.shields.io/badge/stars-34-blue) ![forks](https://img.shields.io/badge/forks-11-blue)
- malgo - Mini audio library. ![stars](https://img.shields.io/badge/stars-300-blue) ![forks](https://img.shields.io/badge/forks-51-blue)
- Oto - A low-level library to play sound on multiple platforms. ![stars](https://img.shields.io/badge/stars-1588-blue) ![forks](https://img.shields.io/badge/forks-133-blue)
-
Authentication and OAuth
- keto - Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models. ![stars](https://img.shields.io/badge/stars-4870-blue)
- scope - Easily Manage OAuth2 Scopes In Go. ![stars](https://img.shields.io/badge/stars-41-blue)
- sessions - Dead simple, highly performant, highly customizable sessions service for go http servers. ![stars](https://img.shields.io/badge/stars-78-blue)
- jwt-go - A full featured implementation of JSON Web Tokens (JWT). This library supports the parsing and verification as well as the generation and signing of JWTs. ![stars](https://img.shields.io/badge/stars-7329-blue)
- oauth2 - Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine, and App Engine support. ![stars](https://img.shields.io/badge/stars-5409-blue)
- go-jose - Fairly complete implementation of the JOSE working group's JSON Web Token, JSON Web Signatures, and JSON Web Encryption specs. ![stars](https://img.shields.io/badge/stars-338-blue)
- casbin - Authorization library that supports access control models like ACL, RBAC, and ABAC. ![stars](https://img.shields.io/badge/stars-17872-blue)
- cookiestxt - provides a parser of cookies.txt file format. ![stars](https://img.shields.io/badge/stars-17-blue)
- branca - branca token [specification implementation](https://github.com/tuupola/branca-spec) for Golang 1.15+. ![stars](https://img.shields.io/badge/stars-85-blue)
- gologin - chainable handlers for login with OAuth1 and OAuth2 authentication providers. ![stars](https://img.shields.io/badge/stars-1828-blue)
- branca - branca token [specification implementation](https://github.com/tuupola/branca-spec) for Golang 1.15+.
- casbin - Authorization library that supports access control models like ACL, RBAC, and ABAC.
- cookiestxt - provides a parser of cookies.txt file format.
- gologin - chainable handlers for login with OAuth1 and OAuth2 authentication providers.
- gorbac - provides a lightweight role-based access control (RBAC) implementation in Golang. ![stars](https://img.shields.io/badge/stars-1608-blue)
- gosession - This is quick session for net/http in GoLang. This package is perhaps the best implementation of the session mechanism, or at least it tries to become one. ![stars](https://img.shields.io/badge/stars-252-blue)
- goth - provides a simple, clean, and idiomatic way to use OAuth and OAuth2. Handles multiple providers out of the box. ![stars](https://img.shields.io/badge/stars-5654-blue)
- jeff - Simple, flexible, secure, and idiomatic web session management with pluggable backends. ![stars](https://img.shields.io/badge/stars-266-blue)
- jwt - Lightweight JSON Web Token (JWT) library. ![stars](https://img.shields.io/badge/stars-357-blue)
- jwt-auth - JWT middleware for Golang http servers with many configuration options. ![stars](https://img.shields.io/badge/stars-233-blue)
- jwx - Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies ![stars](https://img.shields.io/badge/stars-1960-blue)
- loginsrv - JWT login microservice with pluggable backends such as OAuth2 (Github), htpasswd, osiam. ![stars](https://img.shields.io/badge/stars-1919-blue)
- osin - Golang OAuth2 server library. ![stars](https://img.shields.io/badge/stars-1912-blue)
- oauth2 - Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine, and App Engine support.
- oidc - Easy to use OpenID Connect client and server library written for Go and certified by the OpenID Foundation ![stars](https://img.shields.io/badge/stars-1424-blue)
- openfga - Implementation of fine-grained authorization based on the "Zanzibar: Google's Consistent, Global Authorization System" paper. Backed by [CNCF](https://www.cncf.io/). ![stars](https://img.shields.io/badge/stars-3007-blue)
- osin - Golang OAuth2 server library.
- otpgen - Library to generate TOTP/HOTP codes. ![stars](https://img.shields.io/badge/stars-138-blue)
- otpgo - Time-Based One-Time Password (TOTP) and HMAC-Based One-Time Password (HOTP) library for Go. ![stars](https://img.shields.io/badge/stars-71-blue)
- paseto - Golang implementation of Platform-Agnostic Security Tokens (PASETO). ![stars](https://img.shields.io/badge/stars-864-blue)
- scs - Session Manager for HTTP servers. ![stars](https://img.shields.io/badge/stars-2177-blue)
- securecookie - Efficient secure cookie encoding/decoding. ![stars](https://img.shields.io/badge/stars-80-blue)
- session - Go session management for web servers (including support for Google App Engine - GAE). ![stars](https://img.shields.io/badge/stars-118-blue)
- loginsrv - JWT login microservice with pluggable backends such as OAuth2 (Github), htpasswd, osiam.
- sessionup - Simple, yet effective HTTP session management and identification package. ![stars](https://img.shields.io/badge/stars-125-blue)
- authboss - Modular authentication system for the web. It tries to remove as much boilerplate and "hard things" as possible so that each time you start a new web project in Go, you can plug it in, configure it, and start building your app without having to build an authentication system each time. ![stars](https://img.shields.io/badge/stars-3876-blue)
- go-guardian - Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication that supports LDAP, Basic, Bearer token, and Certificate based authentication. ![stars](https://img.shields.io/badge/stars-563-blue)
- gosession - This is quick session for net/http in GoLang. This package is perhaps the best implementation of the session mechanism, or at least it tries to become one. ![stars](https://img.shields.io/badge/stars-251-blue) ![forks](https://img.shields.io/badge/forks-17-blue)
- jwt - Safe, simple, and fast JSON Web Tokens for Go. ![stars](https://img.shields.io/badge/stars-673-blue)
- keto - Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models. ![stars](https://img.shields.io/badge/stars-4829-blue) ![forks](https://img.shields.io/badge/forks-349-blue)
- oidc - Easy to use OpenID Connect client and server library written for Go and certified by the OpenID Foundation ![stars](https://img.shields.io/badge/stars-1391-blue) ![forks](https://img.shields.io/badge/forks-147-blue)
- otpgen - Library to generate TOTP/HOTP codes. ![stars](https://img.shields.io/badge/stars-137-blue) ![forks](https://img.shields.io/badge/forks-12-blue)
- otpgo - Time-Based One-Time Password (TOTP) and HMAC-Based One-Time Password (HOTP) library for Go. ![stars](https://img.shields.io/badge/stars-67-blue) ![forks](https://img.shields.io/badge/forks-10-blue)
- permissions2 - Library for keeping track of users, login states, and permissions. Uses secure cookies and bcrypt. ![stars](https://img.shields.io/badge/stars-512-blue)
- sessions - Dead simple, highly performant, highly customizable sessions service for go http servers. ![stars](https://img.shields.io/badge/stars-78-blue) ![forks](https://img.shields.io/badge/forks-11-blue)
- sessionup - Simple, yet effective HTTP session management and identification package. ![stars](https://img.shields.io/badge/stars-125-blue) ![forks](https://img.shields.io/badge/forks-7-blue)
- sjwt - Simple jwt generator and parser. ![stars](https://img.shields.io/badge/stars-120-blue)
- authboss - Modular authentication system for the web. It tries to remove as much boilerplate and "hard things" as possible so that each time you start a new web project in Go, you can plug it in, configure it, and start building your app without having to build an authentication system each time. ![stars](https://img.shields.io/badge/stars-3862-blue)
- go-guardian - Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication that supports LDAP, Basic, Bearer token, and Certificate based authentication. ![stars](https://img.shields.io/badge/stars-562-blue)
- gorbac - provides a lightweight role-based access control (RBAC) implementation in Golang. ![stars](https://img.shields.io/badge/stars-1605-blue)
- goth - provides a simple, clean, and idiomatic way to use OAuth and OAuth2. Handles multiple providers out of the box. ![stars](https://img.shields.io/badge/stars-5638-blue)
- jeff - Simple, flexible, secure, and idiomatic web session management with pluggable backends. ![stars](https://img.shields.io/badge/stars-266-blue)
- jwt - Lightweight JSON Web Token (JWT) library. ![stars](https://img.shields.io/badge/stars-356-blue)
- jwt - Safe, simple, and fast JSON Web Tokens for Go. ![stars](https://img.shields.io/badge/stars-672-blue)
- jwt-auth - JWT middleware for Golang http servers with many configuration options. ![stars](https://img.shields.io/badge/stars-232-blue)
- jwt-go - A full featured implementation of JSON Web Tokens (JWT). This library supports the parsing and verification as well as the generation and signing of JWTs. ![stars](https://img.shields.io/badge/stars-7279-blue)
- jwx - Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies ![stars](https://img.shields.io/badge/stars-1951-blue)
- openfga - Implementation of fine-grained authorization based on the "Zanzibar: Google's Consistent, Global Authorization System" paper. Backed by [CNCF](https://www.cncf.io/). ![stars](https://img.shields.io/badge/stars-2958-blue)
- paseto - Golang implementation of Platform-Agnostic Security Tokens (PASETO). ![stars](https://img.shields.io/badge/stars-859-blue)
- scs - Session Manager for HTTP servers. ![stars](https://img.shields.io/badge/stars-2166-blue)
- securecookie - Efficient secure cookie encoding/decoding. ![stars](https://img.shields.io/badge/stars-80-blue)
- session - Go session management for web servers (including support for Google App Engine - GAE). ![stars](https://img.shields.io/badge/stars-118-blue)
- sjwt - Simple jwt generator and parser. ![stars](https://img.shields.io/badge/stars-119-blue)
- goiabada - An open-source authentication and authorization server supporting OAuth2 and OpenID Connect. ![stars](https://img.shields.io/badge/stars-136-blue)
-
Bot Building
- go-tg - Generated from official docs Go client library for accessing Telegram Bot API, with batteries for building complex bots included. ![stars](https://img.shields.io/badge/stars-108-blue)
- Kelp - official trading and market-making bot for the [Stellar](https://www.stellar.org/) DEX. Works out-of-the-box, written in Golang, compatible with centralized exchanges and custom trading strategies. ![stars](https://img.shields.io/badge/stars-1105-blue)
- telego - Telegram Bot API library for Golang with full one-to-one API implementation. ![stars](https://img.shields.io/badge/stars-577-blue)
- go-sarah - Framework to build a bot for desired chat services including LINE, Slack, Gitter, and more. ![stars](https://img.shields.io/badge/stars-261-blue)
- go-tgbot - Pure Golang Telegram Bot API wrapper, generated from swagger file, session-based router, and middleware. ![stars](https://img.shields.io/badge/stars-120-blue)
- go-twitch-irc - Library to write bots for twitch.tv chat ![stars](https://img.shields.io/badge/stars-359-blue)
- govkbot - Simple Go [VK](https://vk.com) bot library. ![stars](https://img.shields.io/badge/stars-50-blue)
- bot - Zero-dependencies Telegram Bot library with additional UI components ![stars](https://img.shields.io/badge/stars-788-blue)
- echotron - An elegant and concurrent library for Telegram Bots in Go. ![stars](https://img.shields.io/badge/stars-377-blue)
- go-chat-bot - IRC, Slack & Telegram bot written in Go. ![stars](https://img.shields.io/badge/stars-825-blue)
- go-tgbot - Pure Golang Telegram Bot API wrapper, generated from swagger file, session-based router, and middleware.
- go-twitch-irc - Library to write bots for twitch.tv chat
- Golang CryptoTrading Bot - A golang implementation of a console-based trading bot for cryptocurrency exchanges. ![stars](https://img.shields.io/badge/stars-1088-blue)
- govkbot - Simple Go [VK](https://vk.com) bot library.
- hanu - Framework for writing Slack bots. ![stars](https://img.shields.io/badge/stars-154-blue)
- larry - Larry 🐦 is a really simple Twitter bot generator that tweets random repositories from Github built in Go. ![stars](https://img.shields.io/badge/stars-161-blue)
- margelet - Framework for building Telegram bots. ![stars](https://img.shields.io/badge/stars-86-blue)
- micha - Go Library for Telegram bot api. ![stars](https://img.shields.io/badge/stars-30-blue)
- slack-bot - Ready to use Slack Bot for lazy developers: Custom commands, Jenkins, Jira, Bitbucket, Github... ![stars](https://img.shields.io/badge/stars-185-blue)
- slacker - Easy to use framework to create Slack bots. ![stars](https://img.shields.io/badge/stars-43-blue)
- tbot - Telegram bot server with API similar to net/http. ![stars](https://img.shields.io/badge/stars-356-blue)
- telegram-bot-api - Simple and clean Telegram bot client. ![stars](https://img.shields.io/badge/stars-5868-blue)
- teleterm - Telegram Bot Exec Terminal Command. ![stars](https://img.shields.io/badge/stars-38-blue)
- Tenyks - Service oriented IRC bot using Redis and JSON for messaging. ![stars](https://img.shields.io/badge/stars-176-blue)
- wayback - A bot for Telegram, Mastodon, Slack, and other messaging platforms archives webpages. ![stars](https://img.shields.io/badge/stars-1829-blue)
- go-sarah - Framework to build a bot for desired chat services including LINE, Slack, Gitter, and more. ![stars](https://img.shields.io/badge/stars-261-blue) ![forks](https://img.shields.io/badge/forks-16-blue)
- go-tg - Generated from official docs Go client library for accessing Telegram Bot API, with batteries for building complex bots included. ![stars](https://img.shields.io/badge/stars-105-blue) ![forks](https://img.shields.io/badge/forks-11-blue)
- Golang CryptoTrading Bot - A golang implementation of a console-based trading bot for cryptocurrency exchanges. ![stars](https://img.shields.io/badge/stars-1079-blue) ![forks](https://img.shields.io/badge/forks-245-blue)
- Kelp - official trading and market-making bot for the [Stellar](https://www.stellar.org/) DEX. Works out-of-the-box, written in Golang, compatible with centralized exchanges and custom trading strategies. ![stars](https://img.shields.io/badge/stars-1102-blue) ![forks](https://img.shields.io/badge/forks-261-blue)
- olivia - A chatbot built with an artificial neural network. ![stars](https://img.shields.io/badge/stars-3687-blue)
- slackscot - Another framework for building Slack bots. ![stars](https://img.shields.io/badge/stars-55-blue)
- telebot - Telegram bot framework is written in Go. ![stars](https://img.shields.io/badge/stars-4062-blue)
- telegram-bot-api - Simple and clean Telegram bot client. ![stars](https://img.shields.io/badge/stars-5808-blue) ![forks](https://img.shields.io/badge/forks-897-blue)
- Tenyks - Service oriented IRC bot using Redis and JSON for messaging. ![stars](https://img.shields.io/badge/stars-177-blue) ![forks](https://img.shields.io/badge/forks-19-blue)
- bot - Zero-dependencies Telegram Bot library with additional UI components ![stars](https://img.shields.io/badge/stars-763-blue)
- echotron - An elegant and concurrent library for Telegram Bots in Go. ![stars](https://img.shields.io/badge/stars-372-blue)
- ephemeral-roles - A Discord bot for managing ephemeral roles based upon voice channel member presence. ![stars](https://img.shields.io/badge/stars-90-blue)
- go-chat-bot - IRC, Slack & Telegram bot written in Go. ![stars](https://img.shields.io/badge/stars-825-blue)
- hanu - Framework for writing Slack bots. ![stars](https://img.shields.io/badge/stars-154-blue)
- larry - Larry 🐦 is a really simple Twitter bot generator that tweets random repositories from Github built in Go. ![stars](https://img.shields.io/badge/stars-161-blue)
- margelet - Framework for building Telegram bots. ![stars](https://img.shields.io/badge/stars-86-blue)
- micha - Go Library for Telegram bot api. ![stars](https://img.shields.io/badge/stars-30-blue)
- olivia - A chatbot built with an artificial neural network. ![stars](https://img.shields.io/badge/stars-3687-blue)
- slack-bot - Ready to use Slack Bot for lazy developers: Custom commands, Jenkins, Jira, Bitbucket, Github... ![stars](https://img.shields.io/badge/stars-186-blue)
- slacker - Easy to use framework to create Slack bots. ![stars](https://img.shields.io/badge/stars-43-blue)
- slackscot - Another framework for building Slack bots. ![stars](https://img.shields.io/badge/stars-55-blue)
- tbot - Telegram bot server with API similar to net/http. ![stars](https://img.shields.io/badge/stars-355-blue)
- telebot - Telegram bot framework is written in Go. ![stars](https://img.shields.io/badge/stars-4045-blue)
- telego - Telegram Bot API library for Golang with full one-to-one API implementation. ![stars](https://img.shields.io/badge/stars-565-blue)
- teleterm - Telegram Bot Exec Terminal Command. ![stars](https://img.shields.io/badge/stars-38-blue)
- wayback - A bot for Telegram, Mastodon, Slack, and other messaging platforms archives webpages. ![stars](https://img.shields.io/badge/stars-1818-blue)
-
Build Automation
- mage - Mage is a make/rake-like build tool using Go. ![stars](https://img.shields.io/badge/stars-4173-blue)
- air - Air - Live reload for Go apps. ![stars](https://img.shields.io/badge/stars-18421-blue)
- realize - Go build a system with file watchers and live to reload. Run, build and watch file changes with custom paths. ![stars](https://img.shields.io/badge/stars-4460-blue)
- xc - Task runner with README.md defined tasks, executable markdown. ![stars](https://img.shields.io/badge/stars-1206-blue)
- 1build - Command line tool to frictionlessly manage project-specific commands. ![stars](https://img.shields.io/badge/stars-227-blue)
- anko - Simple application watcher for multiple programming languages. ![stars](https://img.shields.io/badge/stars-39-blue)
- mmake - Modern Make. ![stars](https://img.shields.io/badge/stars-1724-blue)
- Task - simple "Make" alternative. ![stars](https://img.shields.io/badge/stars-11601-blue)
- taskctl - Concurrent task runner. ![stars](https://img.shields.io/badge/stars-298-blue)
- xc - Task runner with README.md defined tasks, executable markdown.
- 1build - Command line tool to frictionlessly manage project-specific commands. ![stars](https://img.shields.io/badge/stars-227-blue) ![forks](https://img.shields.io/badge/forks-30-blue)
- gaper - Builds and restarts a Go project when it crashes or some watched file changes. ![stars](https://img.shields.io/badge/stars-81-blue)
- gob - [Gradle](https://docs.gradle.org/)/[Maven](https://maven.apache.org/) like build tool for Go projects. ![stars](https://img.shields.io/badge/stars-11-blue)
- goyek - Create build pipelines in Go. ![stars](https://img.shields.io/badge/stars-576-blue)
- mage - Mage is a make/rake-like build tool using Go. ![stars](https://img.shields.io/badge/stars-4143-blue) ![forks](https://img.shields.io/badge/forks-257-blue)
- mmake - Modern Make. ![stars](https://img.shields.io/badge/stars-1721-blue) ![forks](https://img.shields.io/badge/forks-42-blue)
- Task - simple "Make" alternative. ![stars](https://img.shields.io/badge/stars-11386-blue) ![forks](https://img.shields.io/badge/forks-615-blue)
- taskctl - Concurrent task runner. ![stars](https://img.shields.io/badge/stars-294-blue) ![forks](https://img.shields.io/badge/forks-38-blue)
- anko - Simple application watcher for multiple programming languages. ![stars](https://img.shields.io/badge/stars-39-blue)
- gaper - Builds and restarts a Go project when it crashes or some watched file changes. ![stars](https://img.shields.io/badge/stars-81-blue)
- gob - [Gradle](https://docs.gradle.org/)/[Maven](https://maven.apache.org/) like build tool for Go projects. ![stars](https://img.shields.io/badge/stars-11-blue)
- goyek - Create build pipelines in Go. ![stars](https://img.shields.io/badge/stars-572-blue)
-
Command Line
-
Advanced Console UIs
- cfmt - Contextual fmt inspired by bootstrap color classes. ![stars](https://img.shields.io/badge/stars-103-blue)
- colourize - Go library for ANSI colour text in terminals. ![stars](https://img.shields.io/badge/stars-27-blue)
- crab-config-files-templating - Dynamic configuration file templating tool for kubernetes manifest or general configuration files. ![stars](https://img.shields.io/badge/stars-7-blue)
- go-palette - Go library that provides elegant and convenient style definitions using ANSI colors. Fully compatible & wraps the [fmt library](https://pkg.go.dev/fmt) for nice terminal layouts. ![stars](https://img.shields.io/badge/stars-17-blue)
- asciigraph - Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. ![stars](https://img.shields.io/badge/stars-2695-blue)
- gookit/color - Terminal color rendering tool library, support 16 colors, 256 colors, RGB color rendering output, compatible with Windows. ![stars](https://img.shields.io/badge/stars-1515-blue)
- simpletable - Simple tables in a terminal with Go. ![stars](https://img.shields.io/badge/stars-532-blue)
- aurora - ANSI terminal colors that support fmt.Printf/Sprintf. ![stars](https://img.shields.io/badge/stars-1430-blue)
- box-cli-maker - Make Highly Customized Boxes for your CLI. ![stars](https://img.shields.io/badge/stars-539-blue)
- aurora - ANSI terminal colors that support fmt.Printf/Sprintf.
- box-cli-maker - Make Highly Customized Boxes for your CLI.
- bubbles - TUI components for bubbletea. ![stars](https://img.shields.io/badge/stars-5683-blue)
- bubbletea - Go framework to build terminal apps, based on The Elm Architecture. ![stars](https://img.shields.io/badge/stars-28363-blue)
- cfmt - Simple and convenient formatted stylized output fully compatible with fmt library. ![stars](https://img.shields.io/badge/stars-69-blue)
- chalk - Intuitive package for prettifying terminal/console output. ![stars](https://img.shields.io/badge/stars-452-blue)
- go-colortext - Go library for color output in terminals. ![stars](https://img.shields.io/badge/stars-215-blue)
- go-isatty - isatty for golang. ![stars](https://img.shields.io/badge/stars-835-blue)
- go-colorable - Colorable writer for windows. ![stars](https://img.shields.io/badge/stars-772-blue)
- go-colortext - Go library for color output in terminals.
- ctc - The non-invasive cross-platform terminal color library does not need to modify the Print method. ![stars](https://img.shields.io/badge/stars-46-blue)
- go-ataman - Go library for rendering ANSI colored text templates in terminals. ![stars](https://img.shields.io/badge/stars-17-blue)
- go-isatty - isatty for golang.
- go-prompt - Library for building a powerful interactive prompt, inspired by [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit). ![stars](https://img.shields.io/badge/stars-5298-blue)
- gocui - Minimalist Go library aimed at creating Console User Interfaces. ![stars](https://img.shields.io/badge/stars-9977-blue)
- gommon/color - Style terminal text. ![stars](https://img.shields.io/badge/stars-544-blue)
- marker - Easiest way to match and mark strings for colorful terminal outputs. ![stars](https://img.shields.io/badge/stars-48-blue)
- mpb - Multi progress bar for terminal applications. ![stars](https://img.shields.io/badge/stars-2330-blue)
- progressbar - Basic thread-safe progress bar that works in every OS. ![stars](https://img.shields.io/badge/stars-4161-blue)
- pterm - A library to beautify console output on every platform with many combinable components. ![stars](https://img.shields.io/badge/stars-4884-blue)
- simpletable - Simple tables in a terminal with Go.
- tabby - A tiny library for super simple Golang tables. ![stars](https://img.shields.io/badge/stars-355-blue)
- table - Small library for terminal color based tables. ![stars](https://img.shields.io/badge/stars-50-blue)
- tabular - Print ASCII tables from command line utilities without the need to pass large sets of data to the API. ![stars](https://img.shields.io/badge/stars-76-blue)
- tabular - Print ASCII tables from command line utilities without the need to pass large sets of data to the API.
- termenv - Advanced ANSI style & color support for your terminal applications. ![stars](https://img.shields.io/badge/stars-1762-blue)
- termbox-go - Termbox is a library for creating cross-platform text-based interfaces. ![stars](https://img.shields.io/badge/stars-4685-blue)
- termdash - Go terminal dashboard based on **termbox-go** and inspired by [termui](https://github.com/gizak/termui). ![stars](https://img.shields.io/badge/stars-2734-blue)
- uilive - Library for updating terminal output in real time. ![stars](https://img.shields.io/badge/stars-1701-blue)
- uiprogress - Flexible library to render progress bars in terminal applications. ![stars](https://img.shields.io/badge/stars-2116-blue)
- yacspin - Yet Another CLi Spinner package, for working with terminal spinners. ![stars](https://img.shields.io/badge/stars-439-blue)
- asciigraph - Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. ![stars](https://img.shields.io/badge/stars-2674-blue) ![forks](https://img.shields.io/badge/forks-100-blue)
- bubble-table - An interactive table component for bubbletea. ![stars](https://img.shields.io/badge/stars-455-blue)
- bubbles - TUI components for bubbletea. ![stars](https://img.shields.io/badge/stars-5569-blue) ![forks](https://img.shields.io/badge/forks-264-blue)
- bubbletea - Go framework to build terminal apps, based on The Elm Architecture. ![stars](https://img.shields.io/badge/stars-27829-blue) ![forks](https://img.shields.io/badge/forks-804-blue)
- cfmt - Contextual fmt inspired by bootstrap color classes. ![stars](https://img.shields.io/badge/stars-103-blue) ![forks](https://img.shields.io/badge/forks-7-blue)
- cfmt - Simple and convenient formatted stylized output fully compatible with fmt library. ![stars](https://img.shields.io/badge/stars-68-blue) ![forks](https://img.shields.io/badge/forks-3-blue)
- colourize - Go library for ANSI colour text in terminals. ![stars](https://img.shields.io/badge/stars-27-blue) ![forks](https://img.shields.io/badge/forks-3-blue)
- crab-config-files-templating - Dynamic configuration file templating tool for kubernetes manifest or general configuration files. ![stars](https://img.shields.io/badge/stars-7-blue) ![forks](https://img.shields.io/badge/forks-0-blue)
- ctc - The non-invasive cross-platform terminal color library does not need to modify the Print method. ![stars](https://img.shields.io/badge/stars-46-blue) ![forks](https://img.shields.io/badge/forks-3-blue)
- go-ataman - Go library for rendering ANSI colored text templates in terminals. ![stars](https://img.shields.io/badge/stars-17-blue) ![forks](https://img.shields.io/badge/forks-3-blue)
- go-palette - Go library that provides elegant and convenient style definitions using ANSI colors. Fully compatible & wraps the [fmt library](https://pkg.go.dev/fmt) for nice terminal layouts. ![stars](https://img.shields.io/badge/stars-17-blue) ![forks](https://img.shields.io/badge/forks-3-blue)
- gommon/color - Style terminal text. ![stars](https://img.shields.io/badge/stars-541-blue) ![forks](https://img.shields.io/badge/forks-101-blue)
- gookit/color - Terminal color rendering tool library, support 16 colors, 256 colors, RGB color rendering output, compatible with Windows. ![stars](https://img.shields.io/badge/stars-1511-blue) ![forks](https://img.shields.io/badge/forks-88-blue)
- lipgloss - Declaratively define styles for color, format and layout in the terminal. ![stars](https://img.shields.io/badge/stars-8257-blue)
- termdash - Go terminal dashboard based on **termbox-go** and inspired by [termui](https://github.com/gizak/termui). ![stars](https://img.shields.io/badge/stars-2723-blue) ![forks](https://img.shields.io/badge/forks-136-blue)
- termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). ![stars](https://img.shields.io/badge/stars-13232-blue)
- bubble-table - An interactive table component for bubbletea. ![stars](https://img.shields.io/badge/stars-455-blue)
- chalk - Intuitive package for prettifying terminal/console output. ![stars](https://img.shields.io/badge/stars-452-blue)
- go-colorable - Colorable writer for windows. ![stars](https://img.shields.io/badge/stars-770-blue)
- go-prompt - Library for building a powerful interactive prompt, inspired by [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit). ![stars](https://img.shields.io/badge/stars-5295-blue)
- gocui - Minimalist Go library aimed at creating Console User Interfaces. ![stars](https://img.shields.io/badge/stars-9937-blue)
- lipgloss - Declaratively define styles for color, format and layout in the terminal. ![stars](https://img.shields.io/badge/stars-8206-blue)
- marker - Easiest way to match and mark strings for colorful terminal outputs. ![stars](https://img.shields.io/badge/stars-48-blue)
- mpb - Multi progress bar for terminal applications. ![stars](https://img.shields.io/badge/stars-2325-blue)
- progressbar - Basic thread-safe progress bar that works in every OS. ![stars](https://img.shields.io/badge/stars-4144-blue)
- pterm - A library to beautify console output on every platform with many combinable components. ![stars](https://img.shields.io/badge/stars-4869-blue)
- spinner - Go package to easily provide a terminal spinner with options. ![stars](https://img.shields.io/badge/stars-2370-blue)
- tabby - A tiny library for super simple Golang tables. ![stars](https://img.shields.io/badge/stars-356-blue)
- table - Small library for terminal color based tables. ![stars](https://img.shields.io/badge/stars-50-blue)
- termbox-go - Termbox is a library for creating cross-platform text-based interfaces. ![stars](https://img.shields.io/badge/stars-4681-blue)
- termenv - Advanced ANSI style & color support for your terminal applications. ![stars](https://img.shields.io/badge/stars-1757-blue)
- termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). ![stars](https://img.shields.io/badge/stars-13215-blue)
- uilive - Library for updating terminal output in real time. ![stars](https://img.shields.io/badge/stars-1698-blue)
- uiprogress - Flexible library to render progress bars in terminal applications. ![stars](https://img.shields.io/badge/stars-2112-blue)
- uitable - Library to improve readability in terminal apps using tabular data. ![stars](https://img.shields.io/badge/stars-735-blue)
- yacspin - Yet Another CLi Spinner package, for working with terminal spinners. ![stars](https://img.shields.io/badge/stars-439-blue)
- uitable - Library to improve readability in terminal apps using tabular data. ![stars](https://img.shields.io/badge/stars-735-blue)
-
Standard CLI
- argparse - Command line argument parser inspired by Python's argparse module. ![stars](https://img.shields.io/badge/stars-614-blue)
- mitchellh/cli - Go library for implementing command-line interfaces. ![stars](https://img.shields.io/badge/stars-1734-blue)
- mow.cli - Go library for building CLI applications with sophisticated flag and argument parsing and validation. ![stars](https://img.shields.io/badge/stars-872-blue)
- readline - 90-blue)
- carapace - Command argument completion generator for spf13/cobra. ![stars](https://img.shields.io/badge/stars-437-blue)
- go-andotp - A CLI program to encrypt/decrypt [andOTP](https://github.com/andOTP/andOTP) files. Can be used as a library as well. ![stars](https://img.shields.io/badge/stars-30-blue)
- go-flags - go command line option parser. ![stars](https://img.shields.io/badge/stars-2607-blue)
- hashicorp/cli - Go library for implementing command-line interfaces. ![stars](https://img.shields.io/badge/stars-14-blue)
- carapace-spec - Define simple completions using a spec file. ![stars](https://img.shields.io/badge/stars-19-blue)
- Dnote - A simple command line notebook with multi-device sync. ![stars](https://img.shields.io/badge/stars-2806-blue)
- elvish - An expressive programming language and a versatile interactive shell. ![stars](https://img.shields.io/badge/stars-5747-blue)
- env - Tag-based environment configuration for structs. ![stars](https://img.shields.io/badge/stars-114-blue)
- go-arg - Struct-based argument parsing in Go. ![stars](https://img.shields.io/badge/stars-2042-blue)
- strumt - Library to create prompt chain. ![stars](https://img.shields.io/badge/stars-62-blue)
- acmd - Simple, useful, and opinionated CLI package in Go. ![stars](https://img.shields.io/badge/stars-116-blue)
- argv - Go library to split command line string as arguments array using the bash syntax. ![stars](https://img.shields.io/badge/stars-41-blue)
- clîr - A Simple and Clear CLI library. Dependency free. ![stars](https://img.shields.io/badge/stars-181-blue)
- cmdr - A POSIX/GNU style, getopt-like command-line UI Go library. ![stars](https://img.shields.io/badge/stars-136-blue)
- carapace-bin - Multi-shell multi-command argument completer. ![stars](https://img.shields.io/badge/stars-974-blue)
- climax - Alternative CLI with "human face", in spirit of Go command. ![stars](https://img.shields.io/badge/stars-217-blue)
- clîr - A Simple and Clear CLI library. Dependency free.
- cmdr - A POSIX/GNU style, getopt-like command-line UI Go library.
- cobra - Commander for modern Go CLI interactions. ![stars](https://img.shields.io/badge/stars-38486-blue)
- commandeer - Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags. ![stars](https://img.shields.io/badge/stars-174-blue)
- complete - Write bash completions in Go + Go command bash completion. ![stars](https://img.shields.io/badge/stars-929-blue)
- elvish - An expressive programming language and a versatile interactive shell.
- flag - Simple but powerful command line option parsing library for Go supporting subcommand. ![stars](https://img.shields.io/badge/stars-131-blue)
- flagvar - A collection of flag argument types for Go's standard `flag` package. ![stars](https://img.shields.io/badge/stars-43-blue)
- go-commander - Go library to simplify CLI workflow. ![stars](https://img.shields.io/badge/stars-35-blue)
- gocmd - Go library for building command line applications. ![stars](https://img.shields.io/badge/stars-65-blue)
- hiboot cli - cli application framework with auto configuration and dependency injection. ![stars](https://img.shields.io/badge/stars-180-blue)
- job - JOB, make your short-term command as a long-term job. ![stars](https://img.shields.io/badge/stars-147-blue)
- kingpin - Command line and flag parser supporting sub commands (superseded by `kong`; see below). ![stars](https://img.shields.io/badge/stars-3507-blue)
- liner - Go readline-like library for command-line interfaces. ![stars](https://img.shields.io/badge/stars-1052-blue)
- ops - Unikernel Builder/Orchestrator. ![stars](https://img.shields.io/badge/stars-1299-blue)
- pflag - Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags. ![stars](https://img.shields.io/badge/stars-2432-blue)
- sflags - Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries. ![stars](https://img.shields.io/badge/stars-156-blue)
- subcmd - Another approach to parsing and running subcommands. Works alongside the standard `flag` package. ![stars](https://img.shields.io/badge/stars-8-blue)
- teris-io/cli - Simple and complete API for building command line interfaces in Go. ![stars](https://img.shields.io/badge/stars-130-blue)
- argparse - Command line argument parser inspired by Python's argparse module. ![stars](https://img.shields.io/badge/stars-607-blue) ![forks](https://img.shields.io/badge/forks-62-blue)
- argv - Go library to split command line string as arguments array using the bash syntax. ![stars](https://img.shields.io/badge/stars-41-blue) ![forks](https://img.shields.io/badge/forks-8-blue)
- carapace-bin - Multi-shell multi-command argument completer. ![stars](https://img.shields.io/badge/stars-926-blue) ![forks](https://img.shields.io/badge/forks-49-blue)
- climax - Alternative CLI with "human face", in spirit of Go command. ![stars](https://img.shields.io/badge/stars-217-blue) ![forks](https://img.shields.io/badge/forks-16-blue)
- cmd - Extends the standard `flag` package to support sub commands and more in idiomatic way. ![stars](https://img.shields.io/badge/stars-40-blue)
- command-chain - A go library for configure and run command chains - such as pipelining in unix shells. ![stars](https://img.shields.io/badge/stars-62-blue)
- Dnote - A simple command line notebook with multi-device sync. ![stars](https://img.shields.io/badge/stars-2795-blue) ![forks](https://img.shields.io/badge/forks-118-blue)
- env - Tag-based environment configuration for structs. ![stars](https://img.shields.io/badge/stars-113-blue) ![forks](https://img.shields.io/badge/forks-14-blue)
- flaggy - A robust and idiomatic flags package with excellent subcommand support. ![stars](https://img.shields.io/badge/stars-860-blue)
- go-arg - Struct-based argument parsing in Go. ![stars](https://img.shields.io/badge/stars-2024-blue) ![forks](https://img.shields.io/badge/forks-99-blue)
- go-flags - go command line option parser. ![stars](https://img.shields.io/badge/stars-2588-blue) ![forks](https://img.shields.io/badge/forks-308-blue)
- gocmd - Go library for building command line applications. ![stars](https://img.shields.io/badge/stars-65-blue) ![forks](https://img.shields.io/badge/forks-5-blue)
- job - JOB, make your short-term command as a long-term job. ![stars](https://img.shields.io/badge/stars-145-blue) ![forks](https://img.shields.io/badge/forks-12-blue)
- mcli - A minimal but very powerful cli library for Go. ![stars](https://img.shields.io/badge/stars-33-blue)
- mitchellh/cli - Go library for implementing command-line interfaces. ![stars](https://img.shields.io/badge/stars-1733-blue) ![forks](https://img.shields.io/badge/forks-122-blue)
- mkideal/cli - Feature-rich and easy to use command-line package based on golang struct tags. ![stars](https://img.shields.io/badge/stars-732-blue)
- mow.cli - Go library for building CLI applications with sophisticated flag and argument parsing and validation. ![stars](https://img.shields.io/badge/stars-871-blue) ![forks](https://img.shields.io/badge/forks-55-blue)
- ops - Unikernel Builder/Orchestrator. ![stars](https://img.shields.io/badge/stars-1293-blue) ![forks](https://img.shields.io/badge/forks-132-blue)
- pflag - Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags. ![stars](https://img.shields.io/badge/stars-2418-blue) ![forks](https://img.shields.io/badge/forks-347-blue)
- readline - 90-blue) ![forks](https://img.shields.io/badge/forks-12-blue)
- sand - Simple API for creating interpreters and so much more. ![stars](https://img.shields.io/badge/stars-27-blue)
- sflags - Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries. ![stars](https://img.shields.io/badge/stars-150-blue) ![forks](https://img.shields.io/badge/forks-37-blue)
- strumt - Library to create prompt chain. ![stars](https://img.shields.io/badge/stars-61-blue) ![forks](https://img.shields.io/badge/forks-5-blue)
- teris-io/cli - Simple and complete API for building command line interfaces in Go. ![stars](https://img.shields.io/badge/stars-130-blue) ![forks](https://img.shields.io/badge/forks-9-blue)
- ts - Timestamp convert & compare tool. ![stars](https://img.shields.io/badge/stars-20-blue)
- ukautz/clif - Small command line interface framework. ![stars](https://img.shields.io/badge/stars-129-blue)
- urfave/cli - Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli). ![stars](https://img.shields.io/badge/stars-22442-blue)
- version - Collects and displays CLI version information in multiple formats along with upgrade notice. ![stars](https://img.shields.io/badge/stars-101-blue)
- wlog - Simple logging interface that supports cross-platform color and concurrency. ![stars](https://img.shields.io/badge/stars-66-blue)
- wmenu - Easy to use menu structure for cli applications that prompt users to make choices. ![stars](https://img.shields.io/badge/stars-216-blue)
- acmd - Simple, useful, and opinionated CLI package in Go. ![stars](https://img.shields.io/badge/stars-116-blue)
- cmd - Extends the standard `flag` package to support sub commands and more in idiomatic way. ![stars](https://img.shields.io/badge/stars-40-blue)
- cobra - Commander for modern Go CLI interactions. ![stars](https://img.shields.io/badge/stars-38357-blue)
- command-chain - A go library for configure and run command chains - such as pipelining in unix shells. ![stars](https://img.shields.io/badge/stars-62-blue)
- commandeer - Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags. ![stars](https://img.shields.io/badge/stars-174-blue)
- complete - Write bash completions in Go + Go command bash completion. ![stars](https://img.shields.io/badge/stars-928-blue)
- flag - Simple but powerful command line option parsing library for Go supporting subcommand. ![stars](https://img.shields.io/badge/stars-131-blue)
- flaggy - A robust and idiomatic flags package with excellent subcommand support. ![stars](https://img.shields.io/badge/stars-859-blue)
- flagvar - A collection of flag argument types for Go's standard `flag` package. ![stars](https://img.shields.io/badge/stars-43-blue)
- go-commander - Go library to simplify CLI workflow. ![stars](https://img.shields.io/badge/stars-35-blue)
- go-getoptions - Go option parser inspired by the flexibility of Perl’s GetOpt::Long. ![stars](https://img.shields.io/badge/stars-56-blue)
- hiboot cli - cli application framework with auto configuration and dependency injection. ![stars](https://img.shields.io/badge/stars-180-blue)
- kingpin - Command line and flag parser supporting sub commands (superseded by `kong`; see below). ![stars](https://img.shields.io/badge/stars-3502-blue)
- liner - Go readline-like library for command-line interfaces. ![stars](https://img.shields.io/badge/stars-1049-blue)
- mcli - A minimal but very powerful cli library for Go. ![stars](https://img.shields.io/badge/stars-33-blue)
- mkideal/cli - Feature-rich and easy to use command-line package based on golang struct tags. ![stars](https://img.shields.io/badge/stars-732-blue)
- sand - Simple API for creating interpreters and so much more. ![stars](https://img.shields.io/badge/stars-27-blue)
- subcmd - Another approach to parsing and running subcommands. Works alongside the standard `flag` package. ![stars](https://img.shields.io/badge/stars-8-blue)
- survey - Build interactive and accessible prompts with full support for windows and posix terminals. ![stars](https://img.shields.io/badge/stars-4099-blue)
- ts - Timestamp convert & compare tool. ![stars](https://img.shields.io/badge/stars-20-blue)
- ukautz/clif - Small command line interface framework. ![stars](https://img.shields.io/badge/stars-129-blue)
- urfave/cli - Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli). ![stars](https://img.shields.io/badge/stars-22399-blue)
- version - Collects and displays CLI version information in multiple formats along with upgrade notice. ![stars](https://img.shields.io/badge/stars-101-blue)
- wlog - Simple logging interface that supports cross-platform color and concurrency. ![stars](https://img.shields.io/badge/stars-66-blue)
- wmenu - Easy to use menu structure for cli applications that prompt users to make choices. ![stars](https://img.shields.io/badge/stars-216-blue)
- go-getoptions - Go option parser inspired by the flexibility of Perl’s GetOpt::Long. ![stars](https://img.shields.io/badge/stars-56-blue)
-
-
Configuration
-
Standard CLI
- bcl - BCL is a configuration language similar to HCL. ![stars](https://img.shields.io/badge/stars-19-blue)
- config - Cloud native application configuration. Bind ENV to structs in only two lines. ![stars](https://img.shields.io/badge/stars-337-blue)
- go-up - A simple configuration library with recursive placeholders resolution and no magic. ![stars](https://img.shields.io/badge/stars-43-blue)
- gone/jconf - Modular JSON configuration. Keep your config structs along with the code they configure and delegate parsing to submodules without sacrificing full config serialization. ![stars](https://img.shields.io/badge/stars-50-blue)
- joshbetz/config - Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP. ![stars](https://img.shields.io/badge/stars-215-blue)
- kelseyhightower/envconfig - Go library for managing configuration data from environment variables. ![stars](https://img.shields.io/badge/stars-5086-blue)
- koanf - Light weight, extensible library for reading config in Go applications. Built in support for JSON, TOML, YAML, env, command line. ![stars](https://img.shields.io/badge/stars-2823-blue)
- kong - Command-line parser with support for arbitrarily complex command-line structures and additional sources of configuration such as YAML, JSON, TOML, etc (successor to `kingpin`). ![stars](https://img.shields.io/badge/stars-2170-blue)
- env - A lightweight package for loading environment variables into structs. ![stars](https://img.shields.io/badge/stars-67-blue)
- genv - Read environment variables easily with dotenv support. ![stars](https://img.shields.io/badge/stars-40-blue)
- gonfig - Tag-based configuration parser which loads values from different providers into typesafe struct. ![stars](https://img.shields.io/badge/stars-9-blue)
- config - configure your app using file, environment variables, or flags in two lines of code ![stars](https://img.shields.io/badge/stars-51-blue)
- configuration - Library for initializing configuration structs from env variables, files, flags and 'default' tag. ![stars](https://img.shields.io/badge/stars-108-blue)
- configure - Provides configuration through multiple sources, including JSON, flags and environment variables. ![stars](https://img.shields.io/badge/stars-56-blue)
- env - Parse environment variables to Go structs (with defaults). ![stars](https://img.shields.io/badge/stars-4975-blue)
- env - An environment utility package with support for unmarshaling into structs ![stars](https://img.shields.io/badge/stars-6-blue)
- envconfig - Read your configuration from environment variables. ![stars](https://img.shields.io/badge/stars-241-blue)
- envh - Helpers to manage environment variables. ![stars](https://img.shields.io/badge/stars-99-blue)
- fig - Tiny library for reading configuration from a file and from environment variables (with validation & defaults). ![stars](https://img.shields.io/badge/stars-381-blue)
- config - configure your app using file, environment variables, or flags in two lines of code
- configuration - Library for initializing configuration structs from env variables, files, flags and 'default' tag.
- configure - Provides configuration through multiple sources, including JSON, flags and environment variables.
- configuro - opinionated configuration loading & validation framework from ENV and Files focused towards 12-Factor compliant applications. ![stars](https://img.shields.io/badge/stars-95-blue)
- confiq - Structured data format to config struct decoder library for Go - supporting multiple data formats ![stars](https://img.shields.io/badge/stars-35-blue)
- confita - Load configuration in cascade from multiple backends into a struct. ![stars](https://img.shields.io/badge/stars-495-blue)
- conflate - Library/tool to merge multiple JSON/YAML/TOML files from arbitrary URLs, validation against a JSON schema, and application of default values defined in the schema. ![stars](https://img.shields.io/badge/stars-34-blue)
- env - Parse environment variables to Go structs (with defaults).
- env - An environment utility package with support for unmarshaling into structs
- envconfig - Read your configuration from environment variables.
- envh - Helpers to manage environment variables.
- fig - Tiny library for reading configuration from a file and from environment variables (with validation & defaults).
- genv - Read environment variables easily with dotenv support.
- go-aws-ssm - Go package that fetches parameters from AWS System Manager - Parameter Store. ![stars](https://img.shields.io/badge/stars-59-blue)
- go-conf - Simple library for application configuration based on annotated structs. It supports reading the configuration from environment variables, config files and command line parameters. ![stars](https://img.shields.io/badge/stars-11-blue)
- go-ini - A Go package that marshals and unmarshals INI-files. ![stars](https://img.shields.io/badge/stars-14-blue)
- goConfig - Parses a struct as input and populates the fields of this struct with parameters from command line, environment variables and configuration file.
- godotenv - Go port of Ruby's dotenv library (Loads environment variables from `.env`). ![stars](https://img.shields.io/badge/stars-8513-blue)
- gofigure - Go application configuration made easy. ![stars](https://img.shields.io/badge/stars-68-blue)
- GoLobby/Config - GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language. ![stars](https://img.shields.io/badge/stars-367-blue)
- go-conf - Simple library for application configuration based on annotated structs. It supports reading the configuration from environment variables, config files and command line parameters.
- go-ini - A Go package that marshals and unmarshals INI-files.
- go-ssm-config - Go utility for loading configuration parameters from AWS SSM (Parameter Store). ![stars](https://img.shields.io/badge/stars-22-blue)
- go-up - A simple configuration library with recursive placeholders resolution and no magic.
- goConfig - Parses a struct as input and populates the fields of this struct with parameters from command line, environment variables and configuration file.
- godotenv - Go port of Ruby's dotenv library (Loads environment variables from `.env`).
- gofigure - Go application configuration made easy.
- go-array - A Go package that read or set data from map, slice or json. ![stars](https://img.shields.io/badge/stars-20-blue)
- go-aws-ssm - Go package that fetches parameters from AWS System Manager - Parameter Store.
- GoLobby/Config - GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language.
- gookit/config - application config manage(load,get,set). support JSON, YAML, TOML, INI, HCL. multi file load, data override merge. ![stars](https://img.shields.io/badge/stars-542-blue)
- hjson - Human JSON, a configuration file format for humans. Relaxed syntax, fewer mistakes, more comments. ![stars](https://img.shields.io/badge/stars-332-blue)
- hocon - Configuration library for working with the HOCON(a human-friendly JSON superset) format, supports features like environment variables, referencing other values, comments and multiple files. ![stars](https://img.shields.io/badge/stars-79-blue)
- ingo - Flags persisted in an ini-like config file. ![stars](https://img.shields.io/badge/stars-38-blue)
- ini - INI Parser & Write Library, Unmarshal to Struct, Marshal to Json, Write File, watch file. ![stars](https://img.shields.io/badge/stars-15-blue)
- hjson - Human JSON, a configuration file format for humans. Relaxed syntax, fewer mistakes, more comments.
- hocon - Configuration library for working with the HOCON(a human-friendly JSON superset) format, supports features like environment variables, referencing other values, comments and multiple files.
- ingo - Flags persisted in an ini-like config file.
- ini - Go package to read and write INI files. ![stars](https://img.shields.io/badge/stars-3471-blue)
- ini - INI Parser & Write Library, Unmarshal to Struct, Marshal to Json, Write File, watch file.
- gookit/config - application config manage(load,get,set). support JSON, YAML, TOML, INI, HCL. multi file load, data override merge.
- harvester - Harvester, an easy to use static and dynamic configuration package supporting seeding, env vars and Consul integration. ![stars](https://img.shields.io/badge/stars-132-blue)
- konf - The simplest API for reading/watching config from file, env, flag and clouds (e.g. AWS, Azure, GCP). ![stars](https://img.shields.io/badge/stars-246-blue)
- konfig - Composable, observable and performant config handling for Go for the distributed processing era. ![stars](https://img.shields.io/badge/stars-648-blue)
- mini - Golang package for parsing ini-style configuration files. ![stars](https://img.shields.io/badge/stars-35-blue)
- nasermirzaei89/env - Simple useful package for read environment variables. ![stars](https://img.shields.io/badge/stars-18-blue)
- nfigure - Per-library struct-tag based configuration from command lines (Posix & Go-style); environment, JSON, YAML ![stars](https://img.shields.io/badge/stars-8-blue)
- piper - Viper wrapper with config inheritance and key generation. ![stars](https://img.shields.io/badge/stars-8-blue)
- sonic - A blazingly fast JSON serializing & deserializing library. ![stars](https://img.shields.io/badge/stars-7005-blue)
- kelseyhightower/envconfig - Go library for managing configuration data from environment variables.
- konf - The simplest API for reading/watching config from file, env, flag and clouds (e.g. AWS, Azure, GCP).
- konfig - Composable, observable and performant config handling for Go for the distributed processing era.
- mini - Golang package for parsing ini-style configuration files.
- nasermirzaei89/env - Simple useful package for read environment variables.
- nfigure - Per-library struct-tag based configuration from command lines (Posix & Go-style); environment, JSON, YAML
- piper - Viper wrapper with config inheritance and key generation.
- sonic - A blazingly fast JSON serializing & deserializing library.
- swap - Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env). ![stars](https://img.shields.io/badge/stars-8-blue)
- uConfig - Lightweight, zero-dependency, and extendable configuration management. ![stars](https://img.shields.io/badge/stars-69-blue)
- viper - Go configuration with fangs. ![stars](https://img.shields.io/badge/stars-27385-blue)
- xdg - Cross platform package that follows the [XDG Standard](https://specifications.freedesktop.org/basedir-spec/latest/). ![stars](https://img.shields.io/badge/stars-79-blue)
- yamagiconf - The "safe subset" of YAML for Go configs. ![stars](https://img.shields.io/badge/stars-18-blue)
- store - Lightweight configuration manager for Go. ![stars](https://img.shields.io/badge/stars-274-blue)
- swap - Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env).
- typenv - Minimalistic, zero dependency, typed environment variables library. ![stars](https://img.shields.io/badge/stars-9-blue)
- uConfig - Lightweight, zero-dependency, and extendable configuration management.
- viper - Go configuration with fangs.
- xdg - Cross platform package that follows the [XDG Standard](https://specifications.freedesktop.org/basedir-spec/latest/).
- yamagiconf - The "safe subset" of YAML for Go configs.
- aconfig - Simple, useful and opinionated config loader. ![stars](https://img.shields.io/badge/stars-551-blue)
- bcl - BCL is a configuration language similar to HCL. ![stars](https://img.shields.io/badge/stars-19-blue) ![forks](https://img.shields.io/badge/forks-0-blue)
- cleanenv - Minimalistic configuration reader (from files, ENV, and wherever you want). ![stars](https://img.shields.io/badge/stars-1681-blue)
- config - Cloud native application configuration. Bind ENV to structs in only two lines. ![stars](https://img.shields.io/badge/stars-336-blue) ![forks](https://img.shields.io/badge/forks-14-blue)
- go-array - A Go package that read or set data from map, slice or json. ![stars](https://img.shields.io/badge/stars-19-blue) ![forks](https://img.shields.io/badge/forks-0-blue)
- go-cfg - The library provides a unified way to read configuration data into a structure from various sources, such as env, flags, and configuration files (.json, .yaml, .toml, .env). ![stars](https://img.shields.io/badge/stars-43-blue)
- go-ssm-config - Go utility for loading configuration parameters from AWS SSM (Parameter Store). ![stars](https://img.shields.io/badge/stars-22-blue) ![forks](https://img.shields.io/badge/forks-13-blue)
- GoCfg - Config manager with Struct Tags based contracts, custom value providers, parsers, and documentation generation. Customizable yet simple. ![stars](https://img.shields.io/badge/stars-6-blue)
- gone/jconf - Modular JSON configuration. Keep your config structs along with the code they configure and delegate parsing to submodules without sacrificing full config serialization. ![stars](https://img.shields.io/badge/stars-50-blue) ![forks](https://img.shields.io/badge/forks-9-blue)
- harvester - Harvester, an easy to use static and dynamic configuration package supporting seeding, env vars and Consul integration. ![stars](https://img.shields.io/badge/stars-132-blue) ![forks](https://img.shields.io/badge/forks-27-blue)
- ini - Go package to read and write INI files. ![stars](https://img.shields.io/badge/stars-3464-blue) ![forks](https://img.shields.io/badge/forks-374-blue)
- joshbetz/config - Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP. ![stars](https://img.shields.io/badge/stars-215-blue) ![forks](https://img.shields.io/badge/forks-14-blue)
- koanf - Light weight, extensible library for reading config in Go applications. Built in support for JSON, TOML, YAML, env, command line. ![stars](https://img.shields.io/badge/stars-2779-blue) ![forks](https://img.shields.io/badge/forks-152-blue)
- kong - Command-line parser with support for arbitrarily complex command-line structures and additional sources of configuration such as YAML, JSON, TOML, etc (successor to `kingpin`). ![stars](https://img.shields.io/badge/stars-2139-blue) ![forks](https://img.shields.io/badge/forks-140-blue)
- onion - Layer based configuration for Go, Supports JSON, TOML, YAML, properties, etcd, env, and encryption using PGP. ![stars](https://img.shields.io/badge/stars-118-blue)
- store - Lightweight configuration manager for Go. ![stars](https://img.shields.io/badge/stars-274-blue) ![forks](https://img.shields.io/badge/forks-22-blue)
- typenv - Minimalistic, zero dependency, typed environment variables library. ![stars](https://img.shields.io/badge/stars-9-blue) ![forks](https://img.shields.io/badge/forks-1-blue)
- aconfig - Simple, useful and opinionated config loader. ![stars](https://img.shields.io/badge/stars-550-blue)
- cleanenv - Minimalistic configuration reader (from files, ENV, and wherever you want). ![stars](https://img.shields.io/badge/stars-1667-blue)
- configuro - opinionated configuration loading & validation framework from ENV and Files focused towards 12-Factor compliant applications. ![stars](https://img.shields.io/badge/stars-95-blue)
- confiq - Structured data format to config struct decoder library for Go - supporting multiple data formats ![stars](https://img.shields.io/badge/stars-35-blue)
- confita - Load configuration in cascade from multiple backends into a struct. ![stars](https://img.shields.io/badge/stars-495-blue)
- conflate - Library/tool to merge multiple JSON/YAML/TOML files from arbitrary URLs, validation against a JSON schema, and application of default values defined in the schema. ![stars](https://img.shields.io/badge/stars-34-blue)
- go-cfg - The library provides a unified way to read configuration data into a structure from various sources, such as env, flags, and configuration files (.json, .yaml, .toml, .env). ![stars](https://img.shields.io/badge/stars-43-blue)
- onion - Layer based configuration for Go, Supports JSON, TOML, YAML, properties, etcd, env, and encryption using PGP. ![stars](https://img.shields.io/badge/stars-118-blue)
- xdg - Go implementation of the [XDG Base Directory Specification](https://specifications.freedesktop.org/basedir-spec/latest/) and [XDG user directories](https://wiki.archlinux.org/index.php/XDG_user_directories). ![stars](https://img.shields.io/badge/stars-721-blue)
-
-
Continuous Integration
-
Standard CLI
- go-fuzz-action - Use Go 1.18's built-in fuzz testing in GitHub Actions. ![stars](https://img.shields.io/badge/stars-15-blue)
- dot - A minimal, local first continuous integration system that uses Docker to run jobs concurrently in stages. ![stars](https://img.shields.io/badge/stars-24-blue)
- drone - Drone is a Continuous Integration platform built on Docker, written in Go. ![stars](https://img.shields.io/badge/stars-32302-blue)
- Bencher - A suite of continuous benchmarking tools designed to catch performance regressions in CI.
- CDS - Enterprise-Grade CI/CD and DevOps Automation Open Source Platform. ![stars](https://img.shields.io/badge/stars-4615-blue)
- Bencher - A suite of continuous benchmarking tools designed to catch performance regressions in CI.
- CDS - Enterprise-Grade CI/CD and DevOps Automation Open Source Platform.
- drone - Drone is a Continuous Integration platform built on Docker, written in Go.
- go-beautiful-html-coverage - A GitHub Action to track code coverage in your pull requests, with a beautiful HTML preview, for free. ![stars](https://img.shields.io/badge/stars-13-blue)
- go-semver-release - Automate the semantic versioning of Git repositories. ![stars](https://img.shields.io/badge/stars-10-blue)
- gomason - Test, Build, Sign, and Publish your go binaries from a clean workspace. ![stars](https://img.shields.io/badge/stars-65-blue)
- gotestfmt - go test output for humans. ![stars](https://img.shields.io/badge/stars-516-blue)
- goveralls - Go integration for Coveralls.io continuous code coverage tracking system. ![stars](https://img.shields.io/badge/stars-787-blue)
- muffet - Fast website link checker in Go, see [alternatives](https://github.com/lycheeverse/lychee#features). ![stars](https://img.shields.io/badge/stars-2520-blue)
- overalls - Multi-Package go project coverprofile for tools like goveralls. ![stars](https://img.shields.io/badge/stars-115-blue)
- roveralls - Recursive coverage testing tool. ![stars](https://img.shields.io/badge/stars-20-blue)
- woodpecker - Woodpecker is a community fork of the Drone CI system. ![stars](https://img.shields.io/badge/stars-4334-blue)
- overalls - Multi-Package go project coverprofile for tools like goveralls.
- roveralls - Recursive coverage testing tool.
- woodpecker - Woodpecker is a community fork of the Drone CI system.
- goveralls - Go integration for Coveralls.io continuous code coverage tracking system.
- muffet - Fast website link checker in Go, see [alternatives](https://github.com/lycheeverse/lychee#features).
- abstruse - Abstruse is a distributed CI platform. ![stars](https://img.shields.io/badge/stars-937-blue)
- dot - A minimal, local first continuous integration system that uses Docker to run jobs concurrently in stages. ![stars](https://img.shields.io/badge/stars-23-blue) ![forks](https://img.shields.io/badge/forks-0-blue)
- go-fuzz-action - Use Go 1.18's built-in fuzz testing in GitHub Actions. ![stars](https://img.shields.io/badge/stars-15-blue) ![forks](https://img.shields.io/badge/forks-2-blue)
- go-test-coverage - Tool and GitHub action which reports issues when test coverage is below set threshold. ![stars](https://img.shields.io/badge/stars-95-blue)
- go-beautiful-html-coverage - A GitHub Action to track code coverage in your pull requests, with a beautiful HTML preview, for free. ![stars](https://img.shields.io/badge/stars-13-blue)
- go-semver-release - Automate the semantic versioning of Git repositories. ![stars](https://img.shields.io/badge/stars-10-blue)
- gomason - Test, Build, Sign, and Publish your go binaries from a clean workspace. ![stars](https://img.shields.io/badge/stars-65-blue)
- gotestfmt - go test output for humans. ![stars](https://img.shields.io/badge/stars-515-blue)
-
-
Data Integration Frameworks
-
Standard CLI
- Benthos - A message streaming bridge between a range of protocols. ![stars](https://img.shields.io/badge/stars-8156-blue)
-
-
Blockchain
- lnd - A complete implementation of a Lighting Network node. ![stars](https://img.shields.io/badge/stars-7728-blue)
- solana-go - Go library to interface with Solana JSON RPC and WebSocket interfaces. ![stars](https://img.shields.io/badge/stars-958-blue)
- cosmos-sdk - A Framework for Building Public Blockchains in the Cosmos Ecosystem. ![stars](https://img.shields.io/badge/stars-6314-blue)
- gno - A comprehensive smart contract suite built with Golang and Gnolang, a deterministic, purpose-built Go variant for blockchains. ![stars](https://img.shields.io/badge/stars-900-blue)
- gosemble - A Go-based framework for building Polkadot/Substrate-compatible runtimes. ![stars](https://img.shields.io/badge/stars-12-blue)
- gossamer - A Go implementation of the Polkadot Host. ![stars](https://img.shields.io/badge/stars-434-blue)
- kubo - A blockchain framework implemented in Go. It provides content-addressable storage which can be used for decentralized storage in DApps. It is based on the IPFS protocol. ![stars](https://img.shields.io/badge/stars-16204-blue)
- tendermint - High-performance middleware for transforming a state machine written in any programming language into a Byzantine Fault Tolerant replicated state machine using the Tendermint consensus and blockchain protocols. ![stars](https://img.shields.io/badge/stars-5723-blue)
- cometbft - A distributed, Byzantine fault-tolerant, deterministic state machine replication engine. It is a fork of Tendermint Core and implements the Tendermint consensus algorithm. ![stars](https://img.shields.io/badge/stars-654-blue)
- tendermint - High-performance middleware for transforming a state machine written in any programming language into a Byzantine Fault Tolerant replicated state machine using the Tendermint consensus and blockchain protocols. ![stars](https://img.shields.io/badge/stars-5716-blue) ![forks](https://img.shields.io/badge/forks-2073-blue)
- cometbft - A distributed, Byzantine fault-tolerant, deterministic state machine replication engine. It is a fork of Tendermint Core and implements the Tendermint consensus algorithm. ![stars](https://img.shields.io/badge/stars-646-blue)
- cosmos-sdk - A Framework for Building Public Blockchains in the Cosmos Ecosystem. ![stars](https://img.shields.io/badge/stars-6273-blue)
- gno - A comprehensive smart contract suite built with Golang and Gnolang, a deterministic, purpose-built Go variant for blockchains. ![stars](https://img.shields.io/badge/stars-898-blue)
- gosemble - A Go-based framework for building Polkadot/Substrate-compatible runtimes. ![stars](https://img.shields.io/badge/stars-12-blue)
- gossamer - A Go implementation of the Polkadot Host. ![stars](https://img.shields.io/badge/stars-432-blue)
- kubo - A blockchain framework implemented in Go. It provides content-addressable storage which can be used for decentralized storage in DApps. It is based on the IPFS protocol. ![stars](https://img.shields.io/badge/stars-16183-blue)
- lnd - A complete implementation of a Lighting Network node. ![stars](https://img.shields.io/badge/stars-7716-blue)
- solana-go - Go library to interface with Solana JSON RPC and WebSocket interfaces. ![stars](https://img.shields.io/badge/stars-928-blue)
- go-ethereum - Official Go implementation of the Ethereum protocol. ![stars](https://img.shields.io/badge/stars-47803-blue)
-
CSS Preprocessors
-
Standard CLI
- gcss - Pure Go CSS Preprocessor. ![stars](https://img.shields.io/badge/stars-496-blue)
- go-libsass - Go wrapper to the 100% Sass compatible libsass project. ![stars](https://img.shields.io/badge/stars-206-blue)
- gcss - Pure Go CSS Preprocessor.
-
Programming Languages
Categories
Sub Categories
Keywords
golang
248
go
214
cli
62
configuration
51
config
37
command-line
31
golang-library
27
terminal
27
environment-variables
27
bot
24
yaml
18
json
18
telegram
16
jwt
16
environment
16
toml
16
configuration-management
15
blockchain
15
tui
14
golang-package
13
library
13
framework
12
distributed-systems
12
console
12
shell
10
awesome-go
10
telegram-bot
10
flags
10
kubernetes
10
devops
10
color
10
task-runner
8
argument-parser
8
build-tool
8
yaml-configuration
8
ini
8
telegram-bot-api
8
actor-model
8
slack
8
slackbot
8
authentication
8
dotenv
7
env
7
developer-tools
7
auth
6
bash
6
hotp
6
command-line-tool
6
llm
6
totp
6