package database import "github.com/gofiber/fiber/v2" // Simple middleware that provides a shared database pool as a local key "db" func DbMiddleware(db *Database) func(c *fiber.Ctx) error { return func(c *fiber.Ctx) error { c.Locals("db", db) return c.Next() } } // Helper function to get the database from the context, without fiddling with casts func GetDb(c *fiber.Ctx) Database { // Dereference a pointer to a local, casted to a pointer to a Database return *c.Locals("db").(*Database) }