feat(colophon): thank the forks whose ideas landed here

A public fork of this project worked out several things worth having — a
theme toggle, an archive for finished events — and ideas are not code:
nothing here carries a licence obligation, so this is thanks rather than a
term, and it belongs in the credits rather than in NOTICE with the terms.

Credited by GitHub handle and fork URL, not by name. The commits behind that
fork carry a third name again, and a handle is the one identity that is
verifiable and stable.

Hardcoded, unlike the source and studio credits above it — nothing in the
feed knows a fork exists, so there is nothing to derive it from.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
Lucas Winther
2026-08-18 22:32:04 +02:00
co-authored by Claude Opus 5
parent 5761e89163
commit fa4f801108
+39
View File
@@ -42,6 +42,25 @@ export const AUTHOR = {
const LINK = const LINK =
"text-muted underline decoration-hairline underline-offset-2 transition-colors duration-150 hover:text-ink hover:decoration-near"; "text-muted underline decoration-hairline underline-offset-2 transition-colors duration-150 hover:text-ink hover:decoration-near";
/**
* Forks whose ideas ended up here.
*
* Ideas and design, not code — nothing in this list carries a licence
* obligation, which is why it sits here as thanks rather than in NOTICE with
* the terms. Handles rather than names: a handle is verifiable and stable, and
* whoever is behind a fork does not always publish a name to credit.
*
* Unlike the source and studio credits above, this one cannot be derived from
* the feed — nothing in the data knows a fork exists. Hardcoded on purpose;
* adding another is one line.
*/
export const IDEA_CREDITS = [
{
handle: "phuduong85",
url: "https://github.com/phuduong85/gacha-event-tracker",
},
] as const;
/** /**
* How many lagging games to name before summarising the rest. * How many lagging games to name before summarising the rest.
* *
@@ -243,6 +262,26 @@ export function Colophon({
{"."} {"."}
</p> </p>
{IDEA_CREDITS.length > 0 && (
<p className="mt-2">
Additional ideas and design from{" "}
{IDEA_CREDITS.map((c, i) => (
<span key={c.handle}>
{i > 0 && (i === IDEA_CREDITS.length - 1 ? " and " : ", ")}
<a
href={c.url}
target="_blank"
rel="noreferrer noopener"
className={LINK}
>
{c.handle}
</a>
</span>
))}
{"."}
</p>
)}
<p className="mt-2 flex flex-wrap items-center gap-x-4 gap-y-1.5"> <p className="mt-2 flex flex-wrap items-center gap-x-4 gap-y-1.5">
<a <a
href={AUTHOR.github} href={AUTHOR.github}