package main import ( "fmt" "github.com/flosch/pongo2" "github.com/gofiber/fiber/v2" "github.com/gofiber/fiber/v2/middleware/logger" "github.com/gofiber/template/django/v3" ) var userTmpl *pongo2.Template var botTmpl *pongo2.Template var popoverTmpl *pongo2.Template func main() { botTmpl = pongo2.Must(pongo2.FromFile("views/partials/message-bot.html")) userTmpl = pongo2.Must(pongo2.FromFile("views/partials/message-user.html")) popoverTmpl = pongo2.Must(pongo2.FromFile("views/partials/popover.html")) // Import HTML using django engine/template engine := django.New("./views", ".html") // Create new Fiber instance. Can use any framework. I use fiber for speed and simplicity app := fiber.New(fiber.Config{ Views: engine, AppName: "JADE 2.0", EnablePrintRoutes: true, }) // Add default logger app.Use(logger.New()) // Add static files app.Static("/", "./static") // Add routes app.Get("/", indexHandler) // Welcome page app.Get("/chat", ChatPageHandler) // Complete chat page app.Post("/requestMultipleMessages", RequestMultipleMessages) // Request multiple messages app.Get("/loadChat", LoadChatHandler) // Load chat app.Post("/deleteMessage", DeleteMessageHandler) // Delete message app.Get("/loadModelSelection", LoadModelSelectionHandler) // Load model selection app.Get("/generateMultipleMessages", GenerateMultipleMessages) // Generate multiple messages app.Get("/messageContent", GetMessageContentHandler) app.Get("test", func(c *fiber.Ctx) error { fmt.Println("test") return c.SendString("") }) // Start server app.Listen(":8080") } func indexHandler(c *fiber.Ctx) error { return c.Render("welcome", fiber.Map{}, "layouts/main") }