package ui import ( "embed" "io" "text/template" "github.com/labstack/echo/v4" ) //go:embed *.html var htmlFS embed.FS func HTMLFS() embed.FS { return htmlFS } type Renderer struct { templates *template.Template } func (t *Renderer) Render(w io.Writer, name string, data any, c echo.Context) error { return t.templates.ExecuteTemplate(w, name, data) } func NewRenderer() *Renderer { return &Renderer{ templates: template.Must(template.ParseFS(HTMLFS(), "*html")), } }