The Best Go Libraries For Configuration (57)
Discover the best Go libraries for Configuration! Find the perfect tools to streamline your development and boost productivity. From harvester to hjson, we've got you covered. Let the coding begin!
harvester
Harvester, an easy to use static and dynamic configuration package supporting seeding, env vars and Consul integration.
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.
sonic
A blazingly fast JSON serializing & deserializing library.
aconfig
Simple, useful and opinionated config loader.
bcl
BCL is a configuration language similar to HCL.
cleanenv
Minimalistic configuration reader (from files, ENV, and wherever you want).
config
Cloud native application configuration. Bind ENV to structs in only two lines.
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.
confiq
Structured data format to config struct decoder library for Go - supporting multiple data formats
confita
Load configuration in cascade from multiple backends into a struct.
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.
env
Parse environment variables to Go structs (with defaults).
env
A lightweight package for loading environment variables into structs.
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-array
A Go package that read or set data from map, slice or json.
go-aws-ssm
Go package that fetches parameters from AWS System Manager - Parameter Store.
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).
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).
go-up
A simple configuration library with recursive placeholders resolution and no magic.
GoCfg
Config manager with Struct Tags based contracts, custom value providers, parsers, and documentation generation. Customizable yet simple.
godotenv
Go port of Ruby's dotenv library (Loads environment variables from `.env`).
gofigure
Go application configuration made easy.
GoLobby/Config
GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language.
gonfig
Tag-based configuration parser which loads values from different providers into typesafe struct.
gookit/config
application config manage(load,get,set). support JSON, YAML, TOML, INI, HCL. multi file load, data override merge.
ini
Go package to read and write INI files.
ini
INI Parser & Write Library, Unmarshal to Struct, Marshal to Json, Write File, watch file.
joshbetz/config
Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP.
kelseyhightower/envconfig
Go library for managing configuration data from environment variables.
koanf
Light weight, extensible library for reading config in Go applications. Built in support for JSON, TOML, YAML, env, command line.
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.
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`).
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
onion
Layer based configuration for Go, Supports JSON, TOML, YAML, properties, etcd, env, and encryption using PGP.
piper
Viper wrapper with config inheritance and key generation.
store
Lightweight configuration manager for Go.
swap
Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env).
typenv
Minimalistic, zero dependency, typed environment variables library.
uConfig
Lightweight, zero-dependency, and extendable configuration management.
viper
Go configuration with fangs.
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).
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.