Socialify

Folder ..

Viewing main.go
33 lines (29 loc) • 927.0 B

 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
package main

import (
	"fmt"
	"log/slog"
	"pagoda/config"
	"pagoda/database"
	"pagoda/middleware"
	"pagoda/router"

	"github.com/gofiber/fiber/v2"
	"github.com/gofiber/fiber/v2/middleware/cors"
	"github.com/gofiber/fiber/v2/middleware/helmet"
	"github.com/gofiber/fiber/v2/middleware/logger"
)

func main() {
	database.Initialise()
	app := fiber.New()
	app.Use(cors.New(cors.Config{
		AllowOrigins: "http://localhost:5173, https://pagoda.neocities.org",
		AllowHeaders: "Origin,Content-Type,Accept,Content-Length,Accept-Language,Accept-Encoding,Connection,Access-Control-Allow-Origin,Authorization",
		AllowMethods: "GET,POST,HEAD,PUT,DELETE,PATCH,OPTIONS",
	}))
	app.Use(logger.New())
	app.Use(helmet.New())
	app.Use(middleware.Json)
	router.Initialise(app)

	if err := app.Listen(fmt.Sprintf(":%s", config.Port)); err != nil {
		slog.Error(fmt.Sprintf("Failed to start server on port %s. Error: %s", config.Port, err))
	}
}