Skip to content

Commit a596c3c

Browse files
authored
Feat: randomize team on About on page load (#216)
2 parents eeeb1ff + d264410 commit a596c3c

File tree

2 files changed

+70
-59
lines changed

2 files changed

+70
-59
lines changed

src/_data/team.yml

Lines changed: 40 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,63 @@
1-
- name: Shelby Miller
2-
title: Managing Partner
3-
image: "shelby-miller.png"
4-
classes: ""
5-
6-
- name: Machiko Yasuda
7-
title: Senior Software Engineer
8-
image: "machiko-yasuda.png"
9-
classes: ""
10-
11-
- name: Scott Frazier
12-
title: Managing Partner
13-
image: "scott-frazier.png"
14-
classes: ""
15-
16-
- name: Laney Mangan
17-
title: Associate Consultant, Customer Support Specialist
18-
image: "laney-mangan.png"
19-
classes: ""
20-
21-
- name: Sarah Henry
22-
title: UX Designer
23-
image: "sarah-henry.png"
24-
classes: ""
25-
26-
- name: Vyki Englert
27-
title: Managing Partner
28-
image: "vyki-englert.png"
29-
classes: "collapseMore collapse"
30-
31-
- name: Olivia Ramacier
32-
title: Associate Researcher, Customer Success Specialist
33-
image: "olivia-ramacier.png"
34-
classes: "collapseMore collapse"
1+
- name: Adam Linder
2+
title: Account Manager
3+
image: "adam-linder.png"
354

365
- name: Angela Tran
376
title: Senior Software Engineer
387
image: "angela-tran.png"
39-
classes: "collapseMore collapse"
408

419
- name: Anthony Rollins
4210
title: Managing Partner
4311
image: "anthony-rollins.png"
44-
classes: "collapseMore collapse"
45-
46-
- name: Milo Green
47-
title: Executive Assistant, Business Development
48-
image: "milo-green.png"
49-
classes: "collapseMore collapse"
5012

5113
- name: Kegan Maher
5214
title: Managing Partner
5315
image: "kegan-maher.png"
54-
classes: "collapseMore collapse"
16+
17+
- name: Laney Mangan
18+
title: Associate Consultant, Customer Support Specialist
19+
image: "laney-mangan.png"
20+
21+
- name: Luis Alvergue
22+
title: Senior Software Engineer
23+
image: "luis-alvergue.png"
24+
25+
- name: Machiko Yasuda
26+
title: Senior Software Engineer
27+
image: "machiko-yasuda.png"
28+
29+
- name: Marie Araneta
30+
title: Account Manager
31+
image: "marie-araneta.png"
5532

5633
- name: Marissa Rosemblat
5734
title: Product Manager
5835
image: "marissa-rosemblat.png"
59-
classes: "collapseMore collapse"
6036

61-
- name: Adam Linder
62-
title: Account Manager
63-
image: "adam-linder.png"
64-
classes: "collapseMore collapse"
37+
- name: Milo Green
38+
title: Executive Assistant, Business Development
39+
image: "milo-green.png"
6540

6641
- name: Nina Dinh
6742
title: Account Manager
6843
image: "nina-dinh.png"
69-
classes: "collapseMore collapse"
7044

71-
- name: Marie Araneta
72-
title: Account Manager
73-
image: "marie-araneta.png"
74-
classes: "collapseMore collapse"
45+
- name: Olivia Ramacier
46+
title: Associate Researcher, Customer Success Specialist
47+
image: "olivia-ramacier.png"
7548

76-
- name: Luis Alvergue
77-
title: Senior Software Engineer
78-
image: "luis-alvergue.png"
79-
classes: "collapseMore collapse"
49+
- name: Sarah Henry
50+
title: UX Designer
51+
image: "sarah-henry.png"
52+
53+
- name: Scott Frazier
54+
title: Managing Partner
55+
image: "scott-frazier.png"
56+
57+
- name: Shelby Miller
58+
title: Managing Partner
59+
image: "shelby-miller.png"
60+
61+
- name: Vyki Englert
62+
title: Managing Partner
63+
image: "vyki-englert.png"

src/about.html

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ <h2 class="text-dark mb-4">Recent work</h2>
6767
<span class="text-white pill border-0 ps-0 pb-md-5 mb-md-3 pb-4 mb-3 d-inline-block">Our philosophy</span>
6868
</div>
6969
<div class="offset-lg-1 col-lg-5">
70-
<h2 class="text-white mb-3 mb-md-4">Empower government workers </h1>
70+
<h2 class="text-white mb-3 mb-md-4">Empower government workers</h2>
7171
<p class="mb-4 pb-2">Through service design, human-centered policy, and intentional technology choices, we make government services equitable and accessible for all.</p>
7272
</div>
7373
<div class="offset-lg-1 col-lg-5">
@@ -117,9 +117,12 @@ <h2 class="text-white mb-2">Meet the team</h2>
117117
<div class="offset-lg-1 col-lg-10 pt-md-4 mt-md-3 pt-4">
118118
<div class="row row-cols-2 row-cols-sm-3 row-cols-md-5">
119119
{% for member in site.data.team %}
120-
<div class="{{ member.classes }}">
120+
<div class="team-member">
121121
<div class="bg-white rounded">
122-
<img class="img-fluid d-block mx-auto" src="/assets/team_members/{{ member.image }}" alt="Watercolor illustration of {{member.name}}">
122+
<img
123+
class="img-fluid d-block mx-auto"
124+
src="/assets/team_members/{{ member.image }}"
125+
alt="Watercolor illustration of {{member.name}}">
123126
</div>
124127
<h3 class="h4 pt-3 mb-1 d-inline-block text-white">{{ member.name }}</h3>
125128
<p class="fs-7 text-white">{{ member.title }}</p>
@@ -150,3 +153,27 @@ <h3 class="text-dark">Ready to work together?</h3>
150153
</div>
151154
</div>
152155
</section>
156+
157+
<script>
158+
const randomizeTeam = function() {
159+
// get an array of all team members
160+
let members = [...document.querySelectorAll(".team-member")];
161+
let currentIndex = members.length;
162+
// and shuffle
163+
while (currentIndex != 0) {
164+
let shuffleIndex = Math.floor(Math.random() * currentIndex);
165+
currentIndex--;
166+
[members[currentIndex], members[shuffleIndex]] = [members[shuffleIndex], members[currentIndex]];
167+
}
168+
// then override the flex order with new shuffled index
169+
// hiding all but the first 5
170+
members.forEach((m, i) => {
171+
m.style.order = i;
172+
if (i > 4) {
173+
m.classList.add("collapse", "collapseMore");
174+
}
175+
})
176+
};
177+
178+
randomizeTeam();
179+
</script>

0 commit comments

Comments
 (0)