diff --git a/src/lib/sections/about/Credits.svelte b/src/lib/sections/about/Credits.svelte index e19d1f5..652809e 100644 --- a/src/lib/sections/about/Credits.svelte +++ b/src/lib/sections/about/Credits.svelte @@ -5,18 +5,27 @@ let { mainContribs, ghContribs } = $props(); -{#snippet contributor(name: string, role: string, avatar: string)} +{#snippet contributor( + name: string, + github: string, + avatar: string, + role?: string, +)}
- {name} -
-

{name}

-

{role}

-
+ + {name} + + {#if role} +
+

{name}

+

{role}

+
+ {/if}
{/snippet} @@ -34,8 +43,8 @@
{#each mainContribs as contrib} - {@const { name, role, avatar } = contrib} - {@render contributor(name, role, avatar)} + {@const { name, github, avatar, role } = contrib} + {@render contributor(name, github, avatar, role)} {/each}
@@ -74,13 +83,8 @@ {#if ghContribs && ghContribs.length > 0}
{#each ghContribs as contrib} - {@const { name, avatar } = contrib} - {name} + {@const { name, github, avatar } = contrib} + {@render contributor(name, github, avatar)} {/each}
{/if} diff --git a/src/routes/about/+page.svelte b/src/routes/about/+page.svelte index 01fd85a..649005c 100644 --- a/src/routes/about/+page.svelte +++ b/src/routes/about/+page.svelte @@ -12,9 +12,9 @@ interface Contributor { name: string; - github?: string; - role?: string; + github: string; avatar: string; + role?: string; } const donors: Donator[] = []; @@ -22,20 +22,20 @@ const mainContribs: Contributor[] = [ { name: "nullptr", - github: "not-nullptr", + github: "https://github.com/not-nullptr", role: "Lead developer; conversion backend, UI implementation", avatar: "https://avatars.githubusercontent.com/u/62841684?v=4", }, { name: "Realmy", - github: "RealmyTheMan", + github: "https://github.com/RealmyTheMan", role: "Lead designer; logo and branding, user interface design", avatar: "https://avatars.githubusercontent.com/u/163438634?v=4", }, { name: "JovannMC", - github: "JovannMC", - role: "Developer; lorem ipsum, UI implementation", + github: "https://github.com/JovannMC", + role: "Developer; UI implementation", avatar: "https://avatars.githubusercontent.com/u/45893380?v=4", }, ]; @@ -54,18 +54,25 @@ const allContribs = await response.json(); // Filter out main contributors - const mainContribNames = mainContribs.map( - (contrib) => contrib.github, + const mainContribNames = mainContribs.map((contrib) => + contrib.github.split("/").pop(), ); ghContribs = allContribs .filter( (contrib: { login: string }) => !mainContribNames.includes(contrib.login), ) - .map((contrib: { login: string; avatar_url: string }) => ({ - name: contrib.login, - avatar: contrib.avatar_url, - })); + .map( + (contrib: { + login: string; + avatar_url: string; + html_url: string; + }) => ({ + name: contrib.login, + avatar: contrib.avatar_url, + github: contrib.html_url, + }), + ); } catch (e) { error(["general"], `Error fetching GitHub contributors: ${e}`); }