src/internal/config/config.go
726 bytes · 30 lines · capsule://quake0day/[email protected]
raw on github
package config
import "github.com/caarlos0/env/v11"
type Config struct {
Host string `env:"HOST" envDefault:"127.0.0.1"`
Port string `env:"PORT" envDefault:"3000"`
ChatGPT2API ChatGPT2API `envPrefix:"CHATGPT2API_"`
Security Security `envPrefix:"SECURITY_"`
}
type ChatGPT2API struct {
BaseURL string `env:"BASE_URL"`
APIKey string `env:"API_KEY"`
ImageModel string `env:"IMAGE_MODEL" envDefault:"gpt-image-2"`
PromptModel string `env:"PROMPT_MODEL" envDefault:"gpt-5.5"`
}
type Security struct {
SecureCookies bool `env:"SECURE_COOKIES" envDefault:"false"`
}
func MustNew() *Config {
var cfg Config
if err := env.Parse(&cfg); err != nil {
panic(err)
}
return &cfg
}