agecem-org/frontend/frontend.go
Victor Lacasse-Beaudoin 076bb1a90c feat: renommer package ui pour frontend
Si on suit les considérations du domain-driven design, le fait qu'on
réfère toustes à cette partie du code comme `le frontend` me pousse à
renommer le package pour mieux réflèter notre utilisation.

Ça devrait rendre plus évident où les fichiers sources du frontend sont
situés.
2025-05-06 19:40:23 -04:00

36 lines
737 B
Go

/*
Package frontend contient les fichiers sources et templates du frontend web
Les fichiers sont embedded dans l'exécutable afin de simplifier le déploiement.
*/
package frontend
import (
"embed"
"io"
"text/template"
"github.com/labstack/echo/v4"
)
//go:embed *.html
var htmlFS embed.FS
//go:embed vie-etudiante-organismes.json
var organismesJSON string
func OrganismesJSON() string { return organismesJSON }
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")),
}
}