Skip to content

Commit 0f74337

Browse files
committed
2025 New Leads
1 parent 50cb143 commit 0f74337

File tree

2 files changed

+23
-99
lines changed

2 files changed

+23
-99
lines changed

pages/team.json

Lines changed: 8 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -23,34 +23,10 @@
2323
"department": "Executive",
2424
"image": "/team/Samantha Tan.webp"
2525
},
26-
"Fatima Moreno": {
27-
"department": "Mechanical",
28-
"image": "/team/Fatima Morena.webp"
29-
},
30-
"Kelvin La": {
31-
"department": "Mechanical",
32-
"image": "/team/kelvin-la.webp"
33-
},
3426
"Max Bernstein": {
3527
"department": "Executive",
3628
"image": "/team/Max Bernstein.webp"
3729
},
38-
"Gadin Aggarwal": {
39-
"department": "Executive",
40-
"image": "/team/gadin-aggarwal.webp"
41-
},
42-
"Kenneth Odeyemi": {
43-
"department": "Executive",
44-
"image": "/team/Kenneth Odyemi.webp"
45-
},
46-
"William Lam": {
47-
"department": "Mechanical",
48-
"image": "/team/William Lam.webp"
49-
},
50-
"Ollintzin Mortera": {
51-
"department": "Executive",
52-
"image": "/team/Ollintzin Mortera.webp"
53-
},
5430
"Peter Gutkovich": {
5531
"department": "Executive",
5632
"image": "/team/Peter Gutkovich.webp"
@@ -67,34 +43,6 @@
6743
"department": "Mechanical",
6844
"image": "/team/Sherry Wang.webp"
6945
},
70-
"Valentina Wolfe": {
71-
"department": "Executive",
72-
"image": "/team/Valentina Wolfe.webp"
73-
},
74-
"Shirley Jiang": {
75-
"department": "Mechanical",
76-
"image": "/team/shirley-jiang.webp"
77-
},
78-
"Leila Di Giacomo": {
79-
"department": "Mechanical",
80-
"image": "/team/leila-di-giacomo.webp"
81-
},
82-
"Harry Chen": {
83-
"department": "Programming",
84-
"image": "/team/Harry Chen.webp"
85-
},
86-
"Elymar Arenas": {
87-
"department": "Executive",
88-
"image": "/team/Elymar Arenas.webp"
89-
},
90-
"Peleh Liu": {
91-
"department": "Programming",
92-
"image": "/team/peleh-liu.webp"
93-
},
94-
"Johnathan Rojas": {
95-
"department": "Mechanical",
96-
"image": "/team/Johnathan Rojas.webp"
97-
},
9846
"Husain Baker": {
9947
"department": "Executive",
10048
"image": "/team/husain-baker.webp"
@@ -104,23 +52,19 @@
10452
"image": "/team/Rosalind Chen.webp"
10553
},
10654
"Keira Lie": {
107-
"department": "Mechanical",
55+
"department": "Executive",
10856
"image": "/team/Keira Lie.webp"
10957
},
11058
"Sophia Liu": {
11159
"department": "Mechanical",
11260
"image": "/team/Sophia Liu.webp"
11361
},
11462
"Filip Raczkowski": {
115-
"department": "Mechanical",
63+
"department": "Executive",
11664
"image": "/team/filip-raczowski.webp"
11765
},
118-
"Dean Tuminello": {
119-
"department": "Mechanical",
120-
"image": "/team/Dean Tuminello.webp"
121-
},
12266
"Cherine Soewignjo": {
123-
"department": "Programming",
67+
"department": "Executive",
12468
"image": "/team/Cherine Soewignjo.webp"
12569
},
12670
"Isabelle Zhang": {
@@ -141,22 +85,15 @@
14185
},
14286
"Derek Pohl": {
14387
"department": "Mechanical",
144-
"image": "/team/Derek Pohl.webp"
88+
"image": "/team/Derek Pohl.webp",
89+
"role": "Snack Attack"
14590
},
14691
"Seth Simo": {
14792
"department": "CAD",
14893
"image": "/team/Seth Simo.webp"
14994
},
150-
"Fiad Muntakim": {
151-
"department": "Media",
152-
"image": "/team/Fiad Muntakim.webp"
153-
},
154-
"Maxwell Silver": {
155-
"department": "Mechanical",
156-
"image": "/team/maxwell-silver.webp"
157-
},
15895
"MD Sayad": {
159-
"department": "Media",
96+
"department": "Executive",
16097
"image": "/team/md-sayad.webp"
16198
},
16299
"Shu Ying Zhang": {
@@ -165,21 +102,13 @@
165102
},
166103
"Ze Rui Zheng": {
167104
"department": "Programming",
168-
"image": "/team/ze-rui-zheng.webp"
105+
"image": "/team/ze-rui-zheng.webp",
106+
"role": "FRC Software Programmer & Website Manager"
169107
},
170108
"Amridin Mukhamedov": {
171109
"department": "Programming",
172110
"image": "/team/Amridin Mukhamedov.webp"
173111
},
174-
"Chloe Nebel": {
175-
"department": "Media",
176-
"image": "/team/Chloe Nebel.webp"
177-
},
178-
"Danial Armiyaev": {
179-
"department": "Programming",
180-
"image": "/team/Danial Armiyaev.webp"
181-
},
182-
183112
"Drilyon Rinchen": {
184113
"department": "Mechanical",
185114
"image": "/team/Drilyon Rinchen.webp"
@@ -213,10 +142,6 @@
213142
"department": "Mechanical",
214143
"image": "/team/Jasen Chen.webp"
215144
},
216-
"Karla Garcia": {
217-
"department": "Media",
218-
"image": "/team/Karla Garcia.webp"
219-
},
220145
"Katie Maliphol": {
221146
"department": "Mechanical",
222147
"image": "/team/Katie Maliphol.webp"
@@ -225,7 +150,6 @@
225150
"department": "Electrical",
226151
"image": "/team/Leo RobinHunter.webp"
227152
},
228-
229153
"Melike Carrozza": {
230154
"department": "Electrical",
231155
"image": "/team/Melike carrozza.webp"
@@ -234,7 +158,6 @@
234158
"department": "CAD",
235159
"image": "/team/Reina Turley.webp"
236160
},
237-
238161
"Ryan Zhu": {
239162
"department": "Programming",
240163
"image": "/team/Ryan Zhu.webp"

pages/team.tsx

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,29 @@ interface Roster {
1111
// @ts-ignore
1212
const roster: Roster = require('./team.json');
1313
const departments: {
14-
[key: string]: { name: string; image: string, department: string }[]
14+
[key: string]: { name: string; image: string, department: string, role?: string }[]
1515
} = {};
1616

17+
// Process departments immediately
18+
Object.keys(roster).reduce((acc, member) => {
19+
const {department} = roster[member];
20+
if (!departments[department]) {
21+
departments[department] = [];
22+
}
23+
if (!departments[department].some(existingMember => existingMember.name === member)) {
24+
departments[department].push({name: member, image: roster[member].image, department: department, role: roster[member].role});
25+
}
26+
return acc;
27+
}, {});
28+
29+
1730
export default function TeamPage() {
1831
const [searchQuery, setSearchQuery] = useState("");
1932
const [selectedDepartment, setSelectedDepartment] = useState("All");
2033
const [imagesLoading, setImagesLoading] = useState(true);
2134
const [imagesLoaded, setImagesLoaded] = useState(0);
2235
const totalImages = Object.keys(roster).length;
2336

24-
// Process departments immediately
25-
Object.keys(roster).reduce((acc, member) => {
26-
const {department} = roster[member];
27-
if (!departments[department]) {
28-
departments[department] = [];
29-
}
30-
if (!departments[department].some(existingMember => existingMember.name === member)) {
31-
departments[department].push({name: member, image: roster[member].image, department: department});
32-
}
33-
return acc;
34-
}, {});
35-
3637
useEffect(() => {
3738
// Preload images in the background
3839
const imagePromises = Object.values(roster).map(member => {
@@ -65,7 +66,7 @@ export default function TeamPage() {
6566
if (filteredMembers.length > 0) {
6667
acc[dept] = filteredMembers;
6768
}
68-
return acc;
69+
return acc;
6970
}, {} as typeof departments);
7071

7172
return (

0 commit comments

Comments
 (0)