Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today. Learn more →
Top 23 Go Config Projects
-
gf
GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang. (by gogf)
-
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.
wget https://github.com/TomWright/dasel/releases/download/v2.1.2/dasel_linux_amd64 install -o root -g root -m 0755 dasel_linux_amd64 /usr/bin/dasel
-
SonarLint
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
-
How is this compared to https://github.com/caarlos0/env
-
Yeah this is the easiest route. You could also trying something like assh which allows you more flexibility.
-
gomplate
A flexible commandline tool for template rendering. Supports lots of local and remote datasources.
-
koanf
Simple, extremely lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.
LINK: https://github.com/knadh/koanf
-
Project mention: Advice request on the best approach to backup with restic | /r/selfhosted | 2023-05-19
I have looked up and found restic to be a good choice for the many advantages it provides (reduplication, incremental copies, encryption, free, ...). I looked also at the many projects built on it to make it easier to configure (resticker, autorestic). I already made a simple test locally for my MainPC (with docker swarm) and it seems to be fine.
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
-
konfig
Composable, observable and performant config handling for Go for the distributed processing era
-
Project mention: Sake is a command runner for local and remote hosts | news.ycombinator.com | 2022-10-13
-
gookit/config
📝 Go configuration manage(load,get,set,export). support JSON, YAML, TOML, Properties, INI, HCL, ENV and Flags. Multi file load, data override merge, parse ENV var. Go应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名 (by gookit)
In that case, you should not be using the shell to read the .env file; instead, use a library. I recommend https://github.com/gookit/config
-
-
config
A lightweight yet powerful configuration manager for the Go programming language (by golobby)
-
-
-
joshbetz/config
🛠 A configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP. (by joshbetz)
-
What is this 2 releases per feature you speak of. Can feature flags solve this?
or maybe Thema (in time) https://github.com/grafana/thema
-
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.
-
-
-
configuro
An opinionated configuration loading framework for Containerized and Cloud-Native applications.
-
terraform-provider-utils
The Cloud Posse Terraform Provider for various utilities (e.g. deep merging, stack configuration management)
I had this same need and decided to use the CloudPosse utils provider to perform the YAML merge directly in terraform.
-
configuration
Library for setting values to structs' fields from env, flags, files or default tag (by BoRuDar)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Go Config related posts
- Architect your project with Framed: effortless files and directories management
- Architect your project with Framed: effortless files and directories management
- Ansible: Connecting to multiple jump hosts
- Framed - project for managing dirs and files in a structured way.
- Framed – managing dirs and files for your projects
- How to read .env file with a variable that contains $ ?
- Safely Load Environment Variables
-
A note from our sponsor - SonarLint
www.sonarlint.org | 5 Jun 2023
Index
What are some of the best open-source Config projects in Go? This list will help you:
Project | Stars | |
---|---|---|
1 | gf | 9,365 |
2 | dasel | 4,243 |
3 | env | 3,551 |
4 | Advanced SSH config | 2,780 |
5 | gomplate | 2,194 |
6 | koanf | 1,833 |
7 | autorestic | 794 |
8 | konfig | 634 |
9 | sake | 601 |
10 | gookit/config | 464 |
11 | aconfig | 447 |
12 | config | 329 |
13 | remco | 290 |
14 | git-switcher | 217 |
15 | joshbetz/config | 214 |
16 | thema | 171 |
17 | gcfg | 162 |
18 | goConfig | 158 |
19 | dnjs | 130 |
20 | onion | 113 |
21 | configuro | 87 |
22 | terraform-provider-utils | 83 |
23 | configuration | 83 |