diff --git a/src/components/layout/NavBar.svelte b/src/components/layout/NavBar.svelte index b998b7c..36193b3 100644 --- a/src/components/layout/NavBar.svelte +++ b/src/components/layout/NavBar.svelte @@ -35,6 +35,7 @@ Meet the council Events Resources + Dev Team {#if isElectionTime} Join ECSESS {/if} @@ -52,6 +53,7 @@ Meet the council Events Resources + Dev Team {#if isElectionTime} Join ECSESS {/if} diff --git a/src/components/team/CommitDot.svelte b/src/components/team/CommitDot.svelte new file mode 100644 index 0000000..fb9698f --- /dev/null +++ b/src/components/team/CommitDot.svelte @@ -0,0 +1,19 @@ + + +
+
+ {#if active} +
+ {/if} +
+
diff --git a/src/components/team/ContribTimeline.svelte b/src/components/team/ContribTimeline.svelte new file mode 100644 index 0000000..7b46f4a --- /dev/null +++ b/src/components/team/ContribTimeline.svelte @@ -0,0 +1,38 @@ + + +
+ +
+ +
+ + +
+ {#each members as member} + + {/each} +
+
diff --git a/src/components/team/DevCard.svelte b/src/components/team/DevCard.svelte new file mode 100644 index 0000000..3718acc --- /dev/null +++ b/src/components/team/DevCard.svelte @@ -0,0 +1,126 @@ + + +
+ +
+ +
+
+ {name} +
+

+ {name} +

+

{role}

+
+
+
+ + +
+ +
+ + {year} + +
+ + +
+

+ {funFact || ``} +

+
+ + +
+ {#if github} + + {/if} + {#if email && active} + + + Email + + {/if} +
+
+
+
+ + diff --git a/src/components/team/YearLine.svelte b/src/components/team/YearLine.svelte new file mode 100644 index 0000000..ea2baa1 --- /dev/null +++ b/src/components/team/YearLine.svelte @@ -0,0 +1,27 @@ + + +
+ +
+ +
+ + +
+ {term} +
+ + +
+
diff --git a/src/lib/schemas.ts b/src/lib/schemas.ts index d3522ee..e3a4d38 100644 --- a/src/lib/schemas.ts +++ b/src/lib/schemas.ts @@ -72,3 +72,15 @@ export type Redirect = { shortname: string; url: string; }; + +export type DevTeam = { + name: string; + role: string; + yearProgram: string; + email: string; + active: boolean; + term: string; + funFact: string; + github: string; + image: string; //URL +}; diff --git a/src/routes/devteam/+page.server.ts b/src/routes/devteam/+page.server.ts new file mode 100644 index 0000000..2969234 --- /dev/null +++ b/src/routes/devteam/+page.server.ts @@ -0,0 +1,23 @@ +//Wait for CMS to setup +import type { DevTeam } from '$lib/schemas'; +import { getFromCMS } from '$lib/utils'; + +const query = `*[_type == "devTeam"]{ + name, + role, + yearProgram, + email, + active, + term, + funFact, + github, + "image": image.asset->url+"?h=300&fm=webp", +}`; + +export const load = async ({ url }) => { + let devTeam: DevTeam[] = await getFromCMS(query); + return { + devTeam: devTeam, + canonical: url.href + }; +}; diff --git a/src/routes/devteam/+page.svelte b/src/routes/devteam/+page.svelte new file mode 100644 index 0000000..a54cb6c --- /dev/null +++ b/src/routes/devteam/+page.svelte @@ -0,0 +1,80 @@ + + + + +
+
+ +
+ git log --dev-team +

+ Want to build the future of ECSESS?
+ + + Contribute on GitHub → + + +

+
+ + +
+
+ + + +
+ {#each groupedTeam as { group, members, active }} +
+ +
+ {/each} +
+
+
+
+