package main import ( "context" "converge/pkg/templates" "github.com/a-h/templ" "os" "path/filepath" ) type RenderFunc func(secure string, host string, username string) templ.Component type Params struct { secure string host string username string } type Rendering struct { params Params render RenderFunc } func render(dir string, name string, params Params, render RenderFunc) { fname := filepath.Join(dir, name) f, err := os.Create(fname) if err != nil { panic(err) } defer f.Close() render(params.secure, params.host, params.username).Render(context.Background(), f) } func main() { dir := "html" params := Params{ secure: "s", host: "example.com", username: "converge", } render(dir, "index.html", params, templates.Index) }