SiteFooter

3 variants. Open one in isolation: use the link on each card.

WithPostIdAndGitHub

Open alone →

src/ui/2_organisms/SiteFooter.astro
---
import Link from '../0_atoms/Link.astro'
import CopyPostId from '../1_molecules/CopyPostId.astro'
interface Props {
/** When set (post detail pages), shown muted in the footer; click copies the raw ID. */
copyablePostId?: string
/** When set with `copyablePostId`, an “e” link opens GitHub’s editor for the source file. */
githubEditHref?: string
}
const { copyablePostId, githubEditHref } = Astro.props
---
<footer class="meta mt-12 flex flex-col gap-4 border-t border-border py-6 text-sm text-ink-faint select-none">
<div class="flex w-full flex-wrap items-center gap-3">
<Link href="/guides">Guides</Link>
<Link href="/notes">Notes</Link>
<Link href="/links">Links</Link>
<Link href="/gists">Gists</Link>
</div>
<div class="flex w-full flex-wrap items-center gap-3">
<Link href="/backlinks">Backlinks</Link>
<Link href="/pagerank">PageRank</Link>
<Link href="/orphans">Orphans</Link>
<Link href="/feed.xml">RSS</Link>
<Link href="/sitemap-index.xml">Sitemap</Link>
</div>
<div class="flex w-full flex-wrap items-center gap-3">
<Link href="https://medium.com/@jacobistyping" target="_blank">Medium</Link>
<Link href="https://github.com/jacobistyping" target="_blank">GitHub</Link>
<Link href="https://linkedin.com/in/jacobistyping" target="_blank">LinkedIn</Link>
</div>
{copyablePostId ? (
<div class="flex w-full">
<CopyPostId postId={copyablePostId} githubEditHref={githubEditHref} />
</div>
) : null}
</footer>