37 lines
820 B
Go

package main
import (
"log"
"os"
"starter/backend/internal/routes"
"github.com/gin-contrib/sessions"
"github.com/gin-contrib/sessions/memstore"
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
// Add memory-based session store for Logto
cookieSecret := os.Getenv("COOKIE_SECRET")
if cookieSecret == "" {
cookieSecret = "default_session_secret" // fallback for local dev
}
store := memstore.NewStore([]byte(cookieSecret))
r.Use(sessions.Sessions("logto-session", store))
// Register all routes under /service/
serviceGroup := r.Group("/service")
routes.RegisterRoutes(serviceGroup)
port := os.Getenv("PORT")
if port == "" {
port = "8080"
}
log.Printf("Starting server on :%s", port)
if err := r.Run(":" + port); err != nil {
log.Fatalf("Failed to run server: %v", err)
}
}