go-envconfig
kelseyhightower/envconfig
Our great sponsors
go-envconfig | kelseyhightower/envconfig | |
---|---|---|
6 | 15 | |
939 | 4,891 | |
- | - | |
6.4 | 0.0 | |
about 1 month ago | 6 months ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-envconfig
- PHP to Golang
-
Beginner-friendly API made with Go following hexagonal architecture.
Also, I put config in the package that needs it using something like this instead of Viper: https://github.com/sethvargo/go-envconfig And then at the entry point make another config that includes all the structs from the packages and inject them after bulk reading in. The beauty of this is I can take a package for reuse and drop it into another project. It’s errors and config are right there with it. Also this reduces cognitive load of trying to find everything in big projects (or dig through a 1000 lines in a centralized location).
- An Efficient Struct Configuration Pattern For Golang
- 'Discoverable' Environment Variables for Configuration
-
Loading environment variables properly in Go with env and gotdotenv
Env files are horrible. I recommend https://github.com/sethvargo/go-envconfig
- I'm looking for a good alternativ to Viper
kelseyhightower/envconfig
-
newbie here looking for a framework
To configure the app I'd take a look at https://github.com/kelseyhightower/envconfig
-
REST API with Go, Chi, MySQL and sqlx
envconfig
-
What is the most common approach to configure a backend app?
- Having one way of configuring the app is excellent. You can either prefer environment variables, a file, or flags. You can do what Viper does by reading the file and unmarshalling it. The built-in flag package is enough for your flag-based config needs. If you want to prefer environment variables, I prefer https://github.com/kelseyhightower/envconfig
-
Building Robust Applications in Go: Integrating Envconfig, Gorm, and OpenSearch
To extract values from the system environment, I utilize envconfig, a Go package. Envconfig facilitates mapping system environment variables to a Go struct. These Go structs are exposed through a config package, enabling other parts of the application to access them.
- An Efficient Struct Configuration Pattern For Golang
- A new method of configuration load in Golang
-
Configuration management library for stage and production environments ?
You could prefix your env vars and use this package. https://github.com/kelseyhightower/envconfig
-
passwords, secrets, keys - best practice
kelseyhightower/envconfig
-
I'm looking for a good alternativ to Viper
Pretty much all of our services and pkgs use https://github.com/kelseyhightower/envconfig. It’s dead simple, gets out of your way, and is battle tested
-
Looking for a Go(Golang) buddy
https://github.com/kelseyhightower/envconfig (read config from environment variables, more succinct than viper)
What are some alternatives?
conf - Package conf provides support for using environmental variables and command line arguments for configuration.
viper - Go configuration with fangs
godotenv - A Go port of Ruby's dotenv library (Loads environment variables from .env files)
env - A simple and zero-dependencies library to parse environment variables into structs
ini - Package ini provides INI file read and write functionality in Go
cleanenv - ✨Clean and minimalistic environment configuration reader for Golang
configuro - An opinionated configuration loading framework for Containerized and Cloud-Native applications.
urfave/cli - A simple, fast, and fun package for building command line apps in Go
go-ssm-config - Go utility for loading configuration parameters from AWS SSM (Parameter Store)
ff - Flags-first package for configuration
koanf - Simple, extremely lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.