{{ define "title" }}timeline{{ end }} {{ define "extrameta" }} {{ end }} {{ define "topbar" }} {{ template "layouts/topbar" $ }} {{ end }} {{ define "content" }} {{ with .LoggedInUser }} {{ block "timeline" $ }}{{ end }} {{ else }} {{ block "hero" $ }}{{ end }} {{ block "timeline" $ }}{{ end }} {{ end }} {{ end }} {{ define "hero" }}
tightly-knit
social coding.

tangled is new social-enabled git collaboration platform built on atproto.

we envision a place where developers have complete ownership of their code, open source communities can freely self-govern and most importantly, coding can be social and fun again.

{{ end }} {{ define "timeline" }}

Timeline

{{ range $i, $e := .Timeline }}
{{ if ne $i 0 }}
{{ end }} {{ with $e }}
{{ if .Repo }} {{ block "repoEvent" (list $ .Repo .Source) }} {{ end }} {{ else if .Star }} {{ block "starEvent" (list $ .Star) }} {{ end }} {{ else if .Follow }} {{ block "followEvent" (list $ .Follow .Profile .FollowStats) }} {{ end }} {{ end }}
{{ end }}
{{ end }}
{{ end }} {{ define "repoEvent" }} {{ $root := index . 0 }} {{ $repo := index . 1 }} {{ $source := index . 2 }} {{ $userHandle := resolve $repo.Did }}
{{ template "user/fragments/picHandleLink" $repo.Did }} {{ with $source }} {{ $sourceDid := resolve .Did }} forked {{ $sourceDid }}/{{ .Name }} to {{ $repo.Name }} {{ else }} created {{ $repo.Name }} {{ end }} {{ template "repo/fragments/time" $repo.Created }}
{{ with $repo }} {{ template "user/fragments/repoCard" (list $root . true) }} {{ end }} {{ end }} {{ define "starEvent" }} {{ $root := index . 0 }} {{ $star := index . 1 }} {{ with $star }} {{ $starrerHandle := resolve .StarredByDid }} {{ $repoOwnerHandle := resolve .Repo.Did }}
{{ template "user/fragments/picHandleLink" $starrerHandle }} starred {{ $repoOwnerHandle | truncateAt30 }}/{{ .Repo.Name }} {{ template "repo/fragments/time" .Created }}
{{ with .Repo }} {{ template "user/fragments/repoCard" (list $root . true) }} {{ end }} {{ end }} {{ end }} {{ define "followEvent" }} {{ $root := index . 0 }} {{ $follow := index . 1 }} {{ $profile := index . 2 }} {{ $stat := index . 3 }} {{ $userHandle := resolve $follow.UserDid }} {{ $subjectHandle := resolve $follow.SubjectDid }}
{{ template "user/fragments/picHandleLink" $userHandle }} followed {{ template "user/fragments/picHandleLink" $subjectHandle }} {{ template "repo/fragments/time" $follow.FollowedAt }}
{{ $subjectHandle | truncateAt30 }} {{ with $profile }} {{ with .Description }}

{{.}}

{{ end }} {{ end }} {{ with $stat }}
{{ i "users" "size-4" }} {{ .Followers }} followers {{ .Following }} following
{{ end }}
{{ end }}