Cute Gopher Mascot

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.

See More! πŸš€

hjson

Human JSON, a configuration file format for humans. Relaxed syntax, fewer mistakes, more comments.

See More! πŸš€

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.

See More! πŸš€

ingo

Flags persisted in an ini-like config file.

See More! πŸš€

sonic

A blazingly fast JSON serializing & deserializing library.

See More! πŸš€

aconfig

Simple, useful and opinionated config loader.

See More! πŸš€

bcl

BCL is a configuration language similar to HCL.

See More! πŸš€

cleanenv

Minimalistic configuration reader (from files, ENV, and wherever you want).

See More! πŸš€

config

Cloud native application configuration. Bind ENV to structs in only two lines.

See More! πŸš€

config

configure your app using file, environment variables, or flags in two lines of code

See More! πŸš€

configuration

Library for initializing configuration structs from env variables, files, flags and 'default' tag.

See More! πŸš€

configure

Provides configuration through multiple sources, including JSON, flags and environment variables.

See More! πŸš€

configuro

opinionated configuration loading & validation framework from ENV and Files focused towards 12-Factor compliant applications.

See More! πŸš€

confiq

Structured data format to config struct decoder library for Go - supporting multiple data formats

See More! πŸš€

confita

Load configuration in cascade from multiple backends into a struct.

See More! πŸš€

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.

See More! πŸš€

env

Parse environment variables to Go structs (with defaults).

See More! πŸš€

env

A lightweight package for loading environment variables into structs.

See More! πŸš€

env

An environment utility package with support for unmarshaling into structs

See More! πŸš€

envconfig

Read your configuration from environment variables.

See More! πŸš€

envh

Helpers to manage environment variables.

See More! πŸš€

fig

Tiny library for reading configuration from a file and from environment variables (with validation & defaults).

See More! πŸš€

genv

Read environment variables easily with dotenv support.

See More! πŸš€

go-array

A Go package that read or set data from map, slice or json.

See More! πŸš€

go-aws-ssm

Go package that fetches parameters from AWS System Manager - Parameter Store.

See More! πŸš€

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).

See More! πŸš€

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.

See More! πŸš€

go-ini

A Go package that marshals and unmarshals INI-files.

See More! πŸš€

go-ssm-config

Go utility for loading configuration parameters from AWS SSM (Parameter Store).

See More! πŸš€

go-up

A simple configuration library with recursive placeholders resolution and no magic.

See More! πŸš€

GoCfg

Config manager with Struct Tags based contracts, custom value providers, parsers, and documentation generation. Customizable yet simple.

See More! πŸš€

godotenv

Go port of Ruby's dotenv library (Loads environment variables from `.env`).

See More! πŸš€

gofigure

Go application configuration made easy.

See More! πŸš€

GoLobby/Config

GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language.

See More! πŸš€

gonfig

Tag-based configuration parser which loads values from different providers into typesafe struct.

See More! πŸš€

gookit/config

application config manage(load,get,set). support JSON, YAML, TOML, INI, HCL. multi file load, data override merge.

See More! πŸš€

ini

Go package to read and write INI files.

See More! πŸš€

ini

INI Parser & Write Library, Unmarshal to Struct, Marshal to Json, Write File, watch file.

See More! πŸš€

joshbetz/config

Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP.

See More! πŸš€

kelseyhightower/envconfig

Go library for managing configuration data from environment variables.

See More! πŸš€

koanf

Light weight, extensible library for reading config in Go applications. Built in support for JSON, TOML, YAML, env, command line.

See More! πŸš€

konf

The simplest API for reading/watching config from file, env, flag and clouds (e.g. AWS, Azure, GCP).

See More! πŸš€

konfig

Composable, observable and performant config handling for Go for the distributed processing era.

See More! πŸš€

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`).

See More! πŸš€

mini

Golang package for parsing ini-style configuration files.

See More! πŸš€

nasermirzaei89/env

Simple useful package for read environment variables.

See More! πŸš€

nfigure

Per-library struct-tag based configuration from command lines (Posix & Go-style); environment, JSON, YAML

See More! πŸš€

onion

Layer based configuration for Go, Supports JSON, TOML, YAML, properties, etcd, env, and encryption using PGP.

See More! πŸš€

piper

Viper wrapper with config inheritance and key generation.

See More! πŸš€

store

Lightweight configuration manager for Go.

See More! πŸš€

swap

Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env).

See More! πŸš€

typenv

Minimalistic, zero dependency, typed environment variables library.

See More! πŸš€

uConfig

Lightweight, zero-dependency, and extendable configuration management.

See More! πŸš€

viper

Go configuration with fangs.

See More! πŸš€

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).

See More! πŸš€

xdg

Cross platform package that follows the [XDG Standard](https://specifications.freedesktop.org/basedir-spec/latest/).

See More! πŸš€

yamagiconf

The "safe subset" of YAML for Go configs.

See More! πŸš€