Files
prompt-generator/internal/config/config.go
T

43 lines
1.0 KiB
Go
Raw Normal View History

package config
import (
"os"
)
type Config struct {
ServerPort string
SessionSecret string
DBHost string
DBPort string
DBUser string
DBPassword string
DBName string
AuthPassword string
LLMAPIBaseURL string
LLMAPIKey string
LLMModelName string
}
func Load() *Config {
return &Config{
ServerPort: getEnv("SERVER_PORT", "8080"),
SessionSecret: getEnv("SESSION_SECRET", "default-secret-change-me"),
DBHost: getEnv("DB_HOST", "127.0.0.1"),
DBPort: getEnv("DB_PORT", "3306"),
DBUser: getEnv("DB_USER", "root"),
DBPassword: getEnv("DB_PASSWORD", ""),
DBName: getEnv("DB_NAME", "prompt_generator"),
AuthPassword: getEnv("AUTH_PASSWORD", "admin"),
LLMAPIBaseURL: getEnv("LLM_API_BASE_URL", "https://api.deepseek.com/v1"),
LLMAPIKey: getEnv("LLM_API_KEY", ""),
LLMModelName: getEnv("LLM_MODEL_NAME", "deepseek-chat"),
}
}
func getEnv(key, fallback string) string {
if v := os.Getenv(key); v != "" {
return v
}
return fallback
}