A templates/tags.go+package templates
+
+import (
+ g "maragu.dev/gomponents"
+ . "maragu.dev/gomponents/html"
+)
+
+type TagsPageVars struct {
+ Title string
+ Tags []string
+}
+
+func TagsPage(site SiteSettings, vars TagsPageVars) g.Node {
+ return Layout(site, PageSettings{
+ Title: vars.Title,
+ }, Div(
+ H3(Class("filter"), g.Text("Tags")),
+ Ul(Class("tags"),
+ g.Map(vars.Tags, func(tag string) g.Node {
+ return Li(Class("h-feed"),
+ tagLink(tag, Class("")),
+ )
+ }),
+ ),
+ ))
+}
+
+func tagLink(tag string, attrs g.Node) g.Node {
+ return A(attrs, Href("/tags/"+tag), g.Text("#"+tag))
+}