🚀 gokit
Toolkit de Go para desarrollo rápido con logger, seguridad y middlewares listos para usar.

✨ Features
- 🎯 Logger: Múltiples destinos, niveles configurables, integración con Gin
- 🔐 Security: Hash (bcrypt/Argon2) y JWT tokens
- 🛡️ Middleware: Auth, CORS, Recovery, Request ID
📦 Instalación
go get github.com/AndresGT/gokit
🚀 Quick Start
package main
import (
"github.com/AndresGT/gokit/logger"
"github.com/AndresGT/gokit/middleware"
"github.com/AndresGT/gokit/security/jwt"
"github.com/gin-gonic/gin"
)
func main() {
// Configurar
jwt.Configure(jwt.Config{Secret: "tu-secreto"})
router := gin.New()
router.Use(middleware.DefaultRequestID())
router.Use(logger.GinMiddlewareWithFields(logger.NewDefault()))
router.Use(middleware.DefaultRecovery())
router.Use(middleware.Auth(middleware.AuthConfig{}))
router.Run(":8080")
}
📚 Paquetes
logger.Info("Servidor iniciando...")
logger.WithFields(logger.Fields{"user_id": id}).Success("OK")
// Hash
hashed, _ := hash.HashPassword("password")
valid := hash.CheckPassword("password", hashed)
// JWT
token, _ := jwt.Generate(userID, "admin")
claims, _ := jwt.Validate(token)
router.Use(middleware.Auth(middleware.AuthConfig{}))
router.Use(middleware.DefaultCORS())
router.Use(middleware.RequireRole("admin"))
📖 Documentación
📄 Licencia