package main import ( "log" "net/http" "github.com/CesarSSH/cqrs-api-go/db" "github.com/CesarSSH/cqrs-api-go/internal/handlers" "github.com/CesarSSH/cqrs-api-go/internal/models" "github.com/CesarSSH/cqrs-api-go/internal/repository" "github.com/CesarSSH/cqrs-api-go/internal/service" "github.com/gorilla/mux" "github.com/CesarSSH/cqrs-api-go/routes" ) func main() { //Conexion de la DB db.DBConnection() // Migrar el modelo db.AutoMigrate(&models.User{}) // Inicializar repositorios y servicios userRepo := repository.NewUserRepository(db.DB) userCmdService := service.NewUserCommandService(userRepo) userQryService := service.NewUserQueryService(userRepo) userHandler := handlers.NewUserHandler(userCmdService, userQryService) // Configurar el enrutador r := mux.NewRouter() // Registrar las rutas de usuarios routes.SetupUserRoutes(r, userHandler) // Iniciar el servidor log.Println("API corriendo en :8080") log.Fatal(http.ListenAndServe(":8080", r)) }