diff --git a/appview/pages/templates/index.html b/appview/pages/templates/index.html
deleted file mode 100644
index eeef7077..00000000
--- a/appview/pages/templates/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
-
- {{ template "layouts/head" . }}
-
- {{ .meta.Title }}
- {{ .meta.Description }}
-
diff --git a/appview/pages/templates/repo/fragments/meta.html b/appview/pages/templates/repo/fragments/meta.html
new file mode 100644
index 00000000..2fb0dd36
--- /dev/null
+++ b/appview/pages/templates/repo/fragments/meta.html
@@ -0,0 +1,26 @@
+{{ define "repo/fragments/meta" }}
+
+
+
+
+
+
+{{ end }}
diff --git a/appview/pages/templates/repo/fragments/og.html b/appview/pages/templates/repo/fragments/og.html
new file mode 100644
index 00000000..88131589
--- /dev/null
+++ b/appview/pages/templates/repo/fragments/og.html
@@ -0,0 +1,11 @@
+{{ define "repo/fragments/og" }}
+ {{ $title := or .Title .RepoInfo.FullName }}
+ {{ $description := or .Description .RepoInfo.Description }}
+ {{ $url := or .Url (printf "https://tangled.sh/%s" .RepoInfo.FullName) }}
+
+
+
+
+
+
+{{ end }}
diff --git a/appview/pages/templates/repo/index.html b/appview/pages/templates/repo/index.html
index 06e778b0..821c422d 100644
--- a/appview/pages/templates/repo/index.html
+++ b/appview/pages/templates/repo/index.html
@@ -1,32 +1,13 @@
{{ define "title" }}{{ .RepoInfo.FullName }} at {{ .Ref }}{{ end }}
+
{{ define "extrameta" }}
-
-
-
-
-
-
+ {{ template "repo/fragments/meta" . }}
+
+ {{ template "repo/fragments/og" (dict "RepoInfo" .RepoInfo) }}
{{ end }}
+
{{ define "repoContent" }}
Join our Discord or IRC channel:
+ Join our Discord or IRC
+ channel:
+ Timeline
- {{ $userHandle | truncateAt30 }}
- {{ if .Source }}
- forked
-
- {{ index $.DidHandleMap .Source.Did }}/{{ .Source.Name }}
-
- to
- {{ .Repo.Name }}
- {{ else }}
- created
- {{ .Repo.Name }}
- {{ end }}
-
-
- {{ $userHandle | truncateAt30 }}
- followed
- {{ $subjectHandle | truncateAt30 }}
-
- Timeline
- {{ $starrerHandle | truncateAt30 }}
- starred
- {{ $repoOwnerHandle | truncateAt30 }}/{{ .Star.Repo.Name }}
-
-
+ {{ $userHandle | truncateAt30 }}
+ {{ if .Source }}
+ forked
+
+ {{ index $.DidHandleMap .Source.Did }}/{{ .Source.Name }}
+
+ to
+ {{ .Repo.Name }}
+ {{ else }}
+ created
+ {{ .Repo.Name }}
+ {{ end }}
+
+
+ {{ $userHandle | truncateAt30 }}
+ followed
+ {{ $subjectHandle | truncateAt30 }}
+
+
diff --git a/appview/pages/templates/repo/issues/issues.html b/appview/pages/templates/repo/issues/issues.html
index 3d816924..2dfb47c7 100644
--- a/appview/pages/templates/repo/issues/issues.html
+++ b/appview/pages/templates/repo/issues/issues.html
@@ -1,5 +1,12 @@
{{ define "title" }}issues · {{ .RepoInfo.FullName }}{{ end }}
+{{ define "extrameta" }}
+ {{ $title := "issues"}}
+ {{ $url := printf "https://tangled.sh/%s/issues" .RepoInfo.FullName }}
+
+ {{ template "repo/fragments/og" (dict "RepoInfo" .RepoInfo "Title" $title "Url" $url) }}
+{{ end }}
+
{{ define "repoContent" }}
diff --git a/appview/pages/templates/repo/pulls/interdiff.html b/appview/pages/templates/repo/pulls/interdiff.html
index c333be10..76287863 100644
--- a/appview/pages/templates/repo/pulls/interdiff.html
+++ b/appview/pages/templates/repo/pulls/interdiff.html
@@ -1,5 +1,13 @@
{{ define "title" }}
- interdiff of round #{{ .Round }} and #{{ sub .Round 1 }}; pull #{{ .Pull.PullId }} · {{ .RepoInfo.FullName }}
+ interdiff of round #{{ .Round }} and #{{ sub .Round 1 }} · pull #{{ .Pull.PullId }} · {{ .RepoInfo.FullName }}
+{{ end }}
+
+
+{{ define "extrameta" }}
+ {{ $title := printf "interdiff of %d and %d · %s · pull #%d · %s" .Round (sub .Round 1) .Pull.Title .Pull.PullId .RepoInfo.FullName }}
+ {{ $url := printf "https://tangled.sh/%s/pulls/%d/round/%d" .RepoInfo.FullName .Pull.PullId .Round }}
+
+ {{ template "repo/fragments/og" (dict "RepoInfo" .RepoInfo "Title" (unescapeHtml $title) "Url" $url) }}
{{ end }}
{{ define "content" }}
diff --git a/appview/pages/templates/repo/pulls/patch.html b/appview/pages/templates/repo/pulls/patch.html
index 41a5900a..d4ff5c4f 100644
--- a/appview/pages/templates/repo/pulls/patch.html
+++ b/appview/pages/templates/repo/pulls/patch.html
@@ -2,6 +2,15 @@
patch of {{ .Pull.Title }} · round #{{ .Round }} · pull #{{ .Pull.PullId }} · {{ .RepoInfo.FullName }}
{{ end }}
+
+{{ define "extrameta" }}
+ {{ $title := printf "patch of %s · pull #%d · %s" .Pull.Title .Pull.PullId .RepoInfo.FullName }}
+ {{ $url := printf "https://tangled.sh/%s/pulls/%d/round/%d" .RepoInfo.FullName .Pull.PullId .Round }}
+
+ {{ template "repo/fragments/og" (dict "RepoInfo" .RepoInfo "Title" $title "Url" $url) }}
+{{ end }}
+
+
{{ define "content" }}
tags
diff --git a/appview/pages/templates/repo/tree.html b/appview/pages/templates/repo/tree.html
index b9bea247..bd0980b0 100644
--- a/appview/pages/templates/repo/tree.html
+++ b/appview/pages/templates/repo/tree.html
@@ -2,12 +2,17 @@
{{ define "extrameta" }}
-
-
-
-
-
-
+
+ {{ $path := "" }}
+ {{ range .BreadCrumbs }}
+ {{ $path = printf "%s/%s" $path (index . 0) }}
+ {{ end }}
+
+ {{ template "repo/fragments/meta" . }}
+ {{ $title := printf "%s at %s · %s" $path .Ref .RepoInfo.FullName }}
+ {{ $url := printf "https://tangled.sh/%s/tree/%s%s" .RepoInfo.FullName .Ref $path }}
+
+ {{ template "repo/fragments/og" (dict "RepoInfo" .RepoInfo "Title" $title "Url" $url) }}
{{ end }}
diff --git a/appview/pages/templates/timeline.html b/appview/pages/templates/timeline.html
index 1ef0dabd..dcca46dc 100644
--- a/appview/pages/templates/timeline.html
+++ b/appview/pages/templates/timeline.html
@@ -1,88 +1,148 @@
{{ define "title" }}timeline{{ end }}
+{{ define "extrameta" }}
+
+
+
+
+{{ end }}
+
{{ define "topbar" }}
- {{ with .LoggedInUser }}
- {{ template "layouts/topbar" $ }}
- {{ else }}
- {{ end }}
+ {{ with .LoggedInUser }}
+ {{ template "layouts/topbar" $ }}
+ {{ else }}
+ {{ end }}
{{ end }}
{{ define "content" }}
- {{ with .LoggedInUser }}
- {{ block "timeline" $ }} {{ end }}
- {{ else }}
- {{ block "hero" $ }} {{ end }}
- {{ block "timeline" $ }} {{ end }}
- {{ end }}
+ {{ with .LoggedInUser }}
+ {{ block "timeline" $ }}{{ end }}
+ {{ else }}
+ {{ block "hero" $ }}{{ end }}
+ {{ block "timeline" $ }}{{ end }}
+ {{ end }}
{{ end }}
{{ define "hero" }}
-#tangled on Libera Chat.
- Read an introduction to Tangled here.#tangled on Libera Chat. Read an introduction to Tangled
+ here.
+