package views import ( "fmt" "path" ) type Link struct { Rel string `json:"rel"` Type string `json:"type"` Href string `json:"href"` } type WebfingerResource struct { Subject string `json:"subject"` Aliases []string `json:"aliases"` Links []Link `json:"links"` } func RenderWebfingerResource(name, domain string) (*WebfingerResource, error) { rs := WebfingerResource{ // TODO clean up Subject: fmt.Sprintf("acct:%s@%s", name, domain), Aliases: []string{}, Links: []Link{{ Rel: "self", Href: path.Join("https://", domain, "actors", name), Type: "application/activity+json", }}, } return &rs, nil }