package main import ( "log" "net/http" "os" "time" "momswap/backend/internal/app" httpapi "momswap/backend/internal/http" "momswap/backend/internal/store" ) func main() { addr := getEnv("ADDR", ":8080") adminPublicKey := os.Getenv("ADMIN_PUBLIC_KEY") memory := store.NewMemoryStore() service := app.NewService(memory, app.Config{ ChallengeTTL: 5 * time.Minute, SessionTTL: 24 * time.Hour, }) service.BootstrapAdmin(adminPublicKey) api := httpapi.NewAPI(service) log.Printf("listening on %s", addr) if err := http.ListenAndServe(addr, api.Routes()); err != nil { log.Fatalf("listen: %v", err) } } func getEnv(key, fallback string) string { v := os.Getenv(key) if v == "" { return fallback } return v }