joshbetz/config
Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP.
About joshbetz/config
config
A small configuration library for Go that parses environment variables, JSON
files, and reloads automatically on SIGHUP.
Example
func main() {
c := config.New("config.json")
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
var value string
c.Get("value", &value)
fmt.Fprintf(w, "Value: %s", value)
})
http.ListenAndServe(":3000", nil)
}
API
func New(file string) *Config
Constructor that initializes a Config object and sets up the SIGHUP watcher.
func (config *Config) Get(key string, v interface{}) error
Takes the path to a JSON file, the name of the configuration option, and a
pointer to the variable where the config value will be stored. v can be a
pointer to a string, bool, or float64.
func (config *Config) Reload()
Reloads the config. Happens automatically on SIGHUP.
Frequently Asked Questions
What is joshbetz/config?
joshbetz/config is a Configuration library for the Go programming language. Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP.
How do I install joshbetz/config?
Install joshbetz/config with the Go module system using `go get joshbetz/config`. Check the repository for the current installation instructions.
What category does joshbetz/config belong to?
joshbetz/config is listed under Configuration, specifically Libraries for configuration parsing..