42 lines
920 B
Go
42 lines
920 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"net/http"
|
|
"time"
|
|
|
|
"git.freecumextremist.com/grumbulon/pomme/frontend"
|
|
"git.freecumextremist.com/grumbulon/pomme/internal"
|
|
"git.freecumextremist.com/grumbulon/pomme/internal/api"
|
|
"github.com/go-chi/chi/v5"
|
|
"github.com/go-chi/chi/v5/middleware"
|
|
)
|
|
|
|
func main() {
|
|
config, err := internal.ReadConfig()
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
pomme := chi.NewRouter()
|
|
pomme.Use(middleware.Logger)
|
|
pomme.Use(middleware.GetHead)
|
|
pomme.Use(middleware.Recoverer)
|
|
|
|
pomme.Mount("/", frontend.SvelteKitHandler("/"))
|
|
pomme.Mount("/api", api.API())
|
|
|
|
log.Println("\t-------------------------------------")
|
|
log.Println("\t\tRunning on port " + config.Port)
|
|
log.Println("\t-------------------------------------")
|
|
|
|
s := &http.Server{
|
|
ReadTimeout: 3 * time.Second,
|
|
WriteTimeout: 15 * time.Second,
|
|
Addr: ":" + config.Port,
|
|
Handler: pomme,
|
|
}
|
|
|
|
log.Fatal(s.ListenAndServe())
|
|
}
|