chadtmiller.com/knotless
Git hosted in your atproto account, on any stock PDS, fast enough for agents.
git clone knotless://chadtmiller.com/knotlessneeds the knotless git helper. set it up
<script lang="ts">
import type { Author } from '#lib/api/Author.ts';
import type { Commit } from '#lib/api/Commit.ts';
import { urlPath } from '#lib/format.ts';
import Avatar from '#lib/atoms/Avatar.svelte';
/**
* Who wrote a commit, and who its trailers say helped: each by account,
* linked to its profile, when that is one of the repository's own
* people; else by the name git gives.
*/
let { commit: c }: { commit: Commit } = $props();
const all = $derived([c.author, ...c.coauthors]);
const joint = (i: number) => (i === 0 ? '' : i === all.length - 1 ? ' and ' : ', ');
</script>
{#snippet who(a: Author)}{#if a.account}<a href="/{urlPath(a.account)}"><b>{a.name}</b></a>{:else}<b>{a.name}</b>{/if}{/snippet}
{#if c.coauthors.length}<span class="avs">{#each all as a, i (i)}<Avatar name={a.name} src={a.avatar} />{/each}</span><span>{#each all as a, i (i)}{joint(i)}{@render who(a)}{/each}</span>{:else}<Avatar name={c.author.name} src={c.author.avatar} />{@render who(c.author)}{/if}