package server import ( "database/sql" "log" "GoMembership/internal/controllers" "GoMembership/internal/repositories" "GoMembership/internal/routes" "GoMembership/internal/services" "net/http" "github.com/gorilla/mux" _ "github.com/go-sql-driver/mysql" ) func Run() { db, err := sql.Open("mysql", "user:password@/dbname") if err != nil { log.Fatal(err) } defer db.Close() userRepo := repositories.NewUserRepository(db) userService := services.NewUserService(userRepo) userController := controllers.NewUserController(userService) router := mux.NewRouter() routes.RegisterRoutes(router, userController) log.Fatal(http.ListenAndServe(":8080", router)) }