E0143: An unknown element or template
A lowercase tag is an HTML, SVG or MathML element when it is one's name or holds a hyphen (a custom element, <my-chart>). Any other lowercase tag is a template or function of the package, used as a tag, as Go would call it: <navLink item={i}/> is navLink(i). Names are case-sensitive, as in Go. This tag is neither.
Wrong
html
package layouts
func Menu(items []Item)
<nav>
for _, i := range items {
<navlink item={i}/>
}
</nav>
func navLink(item Item)
<a href={item.Href}>{item.Label}</a>Right
html
package layouts
func Menu(items []Item)
<nav>
for _, i := range items {
<navLink item={i}/>
}
</nav>
func navLink(item Item)
<a href={item.Href}>{item.Label}</a>