package main import ( "aurora/initialize" "embed" "io/fs" "log" "net/http" "os" "github.com/gin-gonic/gin" "github.com/acheong08/endless" "github.com/joho/godotenv" ) //go:embed web/* var staticFiles embed.FS func main() { _ = godotenv.Load(".env") gin.SetMode(gin.ReleaseMode) router := initialize.RegisterRouter() subFS, err := fs.Sub(staticFiles, "web") if err != nil { log.Fatal(err) } router.StaticFS("/web", http.FS(subFS)) host := os.Getenv("SERVER_HOST") port := os.Getenv("SERVER_PORT") tlsCert := os.Getenv("TLS_CERT") tlsKey := os.Getenv("TLS_KEY") if host == "" { host = "0.0.0.0" } if port == "" { port = os.Getenv("PORT") if port == "" { port = "7860" } } if tlsCert != "" && tlsKey != "" { _ = endless.ListenAndServeTLS(host+":"+port, tlsCert, tlsKey, router) } else { _ = endless.ListenAndServe(host+":"+port, router) } }