Go Config

Open-source Go projects categorized as Config Edit details
Related topics: #Configuration #Golang #Go #CLI #YAML

Top 23 Go Config Projects

  • dasel

    Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.

    Project mention: Dasel 1.25 adds a validate command | news.ycombinator.com | 2022-06-26

    Dasel 1.25.0 adds a validate command. Select, update, delete and validate data from multiple file formats (JSON, YAML, TOML, CSV, XML)


  • env

    A simple and zero-dependencies library to parse environment variables into structs.

    Project mention: A lightweight package for loading environment variables into structs | reddit.com/r/golang | 2022-01-29

    How does it compare with https://github.com/caarlos0/env ?

  • JetBrains

    Developer Ecosystem Survey 2022. Take part in the Developer Ecosystem Survey 2022 by JetBrains and get a chance to win a Macbook, a Nvidia graphics card, or other prizes. We’ll create an infographic full of stats, and you’ll get personalized results so you can compare yourself with other developers.

  • Advanced SSH config

    :computer: make your ssh client smarter

  • gomplate

    A flexible commandline tool for template rendering. Supports lots of local and remote datasources.

    Project mention: Show HN: gq – like jq or zq, but you use Go | news.ycombinator.com | 2022-04-27

    this tool may interest the same audience: https://github.com/hairyhenderson/gomplate

    I find it especially handy for poc-ing helm snippets, although regrettably they don't have the same "standard library" of functions

  • koanf

    Simple, lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.

    Project mention: Viper – Go Configuration with Fangs | news.ycombinator.com | 2022-05-20

    Use viper with care. It has some dangerous fundamental flaws [1]. We got bitten hard, submitted a PR [2] and followed up for a year and a half to no avail, before I went ahead and reinvented the wheel and wrote koanf (plug), specifically to avoid viper's flaws.

    Most importantly:

    - Breaks JSON, YAML, TOML etc. language specs by forcibly lowercasing all keys internally. Dangerous because it can silently merge differently cased config keys into lowercase.

    - Hard codes big unnecessary dependencies into the core, significantly bloating build sizes. No separation or abstraction.

    [1] https://github.com/spf13/viper/pull/635

    [2] https://github.com/knadh/koanf#alternative-to-viper

  • konfig

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

  • autorestic

    Config driven, easy backup cli for restic.

    Project mention: Backup Size for 5TB HDD? | reddit.com/r/selfhosted | 2022-05-02

    The majority of my storage will be large media, documents, and the like that won't update much and I plan to do the backup with autorestic so I'll only be backing up the file changes (which won't be many/frequent).

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • aconfig

    Simple, useful and opinionated config loader.

    Project mention: Library for loading configuration into a struct in Go | reddit.com/r/golang | 2022-03-20

    Well, now I see my project is very similar to this https://github.com/cristalhq/aconfig

  • sake

    :robot: sake is a task runner for local and remote hosts

    Project mention: Sake | reddit.com/r/devopspro | 2022-06-21
  • gookit/config

    📝 Go configuration manage(load,get,set). support JSON, YAML, TOML, INI, HCL, ENV and Flags. Multi file load, data override merge, parse ENV var. Go应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名 (by gookit)

  • config

    A lightweight yet powerful configuration manager for the Go programming language (by golobby)

  • remco

    remco is a lightweight configuration management tool

  • joshbetz/config

    🛠 A configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP. (by joshbetz)

  • git-switcher

    Switch between your git profiles easily

    Project mention: GitHub - TheYkk/git-switcher: Switch between your git profiles easily | reddit.com/r/git | 2021-08-09
  • gcfg

    read INI-style configuration files into Go structs; supports user-defined types and subsections

  • goConfig

    goconfig uses a struct as input and populates the fields of this struct with parameters from command line, environment variables and configuration file.

  • dnjs

    DOM Notation JS

    Project mention: YAML: It's Time to Move On | news.ycombinator.com | 2021-11-14

    How about just nudge json a couple more notches towards js? https://github.com/leontrolski/dnjs

  • onion

    Layer based configuration for golang (by goraz)

  • configuro

    An opinionated configuration loading framework for Containerized and Cloud-Native applications.

  • configuration

    Library for setting values to structs' fields from env, flags, files or default tag (by BoRuDar)

    Project mention: Golang lib to keep configs tidy | news.ycombinator.com | 2022-06-16
  • uconfig

    Lightweight, zero-dependency, and extendable configuration management library for Go


    Library providing routines to merge and validate JSON, YAML and/or TOML files

  • env

    🔍 A lightweight package for loading environment variables into structs (by junk1tm)

    Project mention: A lightweight package for loading environment variables into structs | reddit.com/r/golang | 2022-01-29
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-06-26.

Go Config related posts


What are some of the best open-source Config projects in Go? This list will help you:

Project Stars
1 dasel 3,386
2 env 2,531
3 Advanced SSH config 2,487
4 gomplate 1,776
5 koanf 1,035
6 konfig 628
7 autorestic 479
8 aconfig 376
9 sake 367
10 gookit/config 362
11 config 284
12 remco 273
13 joshbetz/config 210
14 git-switcher 207
15 gcfg 161
16 goConfig 156
17 dnjs 126
18 onion 104
19 configuro 81
20 configuration 63
21 uconfig 49
23 env 22
Find remote jobs at our new job board 99remotejobs.com. There are 3 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.