package confage_test import ( "encoding/json" "fmt" "go.jolheiser.com/confage" ) func Example_config() { const secretKey = "AGE-SECRET-KEY-1AN83H8JECDKHSD2RN70WU8RQYYH3C309UUYQQ0EPQNJR3ZXRDHESTUCCM4" // age1ynmpzgvrqj3r6z39kp3p852afe3nkc3neem80vgq96jt2zhesezq8yhn02 cfg := &Config{ Password: confage.MustNew(secretKey, ""), } if err := json.Unmarshal(config, &cfg); err != nil { panic(err) } fmt.Println(cfg.Password.Value) // Output: // bar } // Example config struct type Config struct { Username string Password confage.Type[string] } // config.json living on disk var config = []byte(`{ "username": "foo", "password": "YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0b3pzdTVtcnBBUFV3bnNsa2RIYlhTVGVYeXlHcHpIbEpMR3ZwcWxHMmtjClc5ald4MHZhdFFKY3NmS0R5bFpXY1VGa1RKeWxHaGVzR3FhS1B1NHgydUkKLS0tIEJYRnhMNm12aE14bUU5bGNPVFBJcHBWZDJBeWFMMVdMUGdyVXErOVFuaWsK3F0DfPH+Ud50XIBoDR2D/+/PMoqNp9O2R6BdBLTLyiENJYrxGxo=" }`)