package api import ( "fmt" "net/http" "github.com/go-chi/chi/v5" "github.com/go-chi/chi/v5/middleware" ) type ( Server struct { handler http.Handler services *Services } Services struct { } ) func New(services *Services) *Server { r := chi.NewRouter() r.Use(middleware.RequestID) r.Use(middleware.Logger) r.Use(middleware.Recoverer) return &Server{ handler: r, services: services, } } func (s *Server) ListenAndServe(port uint16) error { return http.ListenAndServe(fmt.Sprintf(":%d", port), s.handler) }