aboutsummaryrefslogtreecommitdiff
path: root/main.go
blob: 77a05d5420ca732c5c2e26ab5d1c181c1893bdca (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package main

import (
	"fmt"
	"log"
	"os"

	"github.com/gin-gonic/contrib/static"
	"github.com/gin-gonic/gin"
	"github.com/joho/godotenv"
	"github.com/pektezol/leastportals/backend/database"
	"github.com/pektezol/leastportals/backend/routes"
	_ "github.com/pektezol/leastportals/docs"
)

// @title       Least Portals Database API
// @version     1.0
// @description Backend API endpoints for Least Portals Database.

// @license.name GNU General Public License, Version 2
// @license.url  https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

// @host localhost:4000
// @BasePath
func main() {
	if os.Getenv("ENV") == "PROD" {
		gin.SetMode(gin.ReleaseMode)
	}
	err := godotenv.Load()
	if err != nil {
		log.Fatal("Error loading .env file")
	}
	router := gin.Default()
	database.ConnectDB()
	router.Use(static.Serve("/", static.LocalFile("./frontend/dist", true)))
	routes.InitRoutes(router)
	router.Run(fmt.Sprintf(":%s", os.Getenv("PORT")))
}