package main import ( "fmt" "github.com/kkyr/fig" ) type Config struct { Timezone string `fig:"tz" default:"America/New_York"` Server struct { Port string `fig:"port" default:"3000"` } Logger struct { Level string `fig:"level" default:"error"` } } func LoadConfig(server *Server) error { var cfg Config err := fig.Load(&cfg, fig.File("config.yaml"), fig.Dirs("./config"), fig.UseEnv("")) if err != nil { return err } fmt.Println("Configuration loaded successfully...") fmt.Println("PORT: ", cfg.Server.Port) fmt.Println("TZ: ", cfg.Timezone) server.Config = &cfg return nil }