package server import ( "html/template" "github.com/Theodor-Springmann-Stiftung/lenz-web/app" "github.com/labstack/echo/v5" ) // WARNING: this is not thread-safe. You can not write and read from the server at the same time! type Server struct { server *echo.Echo cfg app.Config tmpl *template.Template } func NewServer(app *app.App) (*Server, error) { s := &Server{ server: echo.New(), cfg: app.Config(), tmpl: app.Templates(), } // INFO: Endpoint mapping here: MapStatic(s.server) return s, nil } func (s *Server) Start() error { addr := s.cfg.Address + ":" + s.cfg.Port if err := s.server.Start(addr); err != nil { return err } return nil }