From 3f01d2e3763c9f8433420e8f91ff7af0378a44bc Mon Sep 17 00:00:00 2001
From: Naga Chaitanya Varma <69190057+Chay2203@users.noreply.github.com>
Date: Mon, 8 Apr 2024 11:19:50 +0000
Subject: [PATCH 01/23] changed the text in slack section
---
components/index/cards/slack.js | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/components/index/cards/slack.js b/components/index/cards/slack.js
index 3615bdf1..1fa6fa75 100644
--- a/components/index/cards/slack.js
+++ b/components/index/cards/slack.js
@@ -91,10 +91,10 @@ export default function Slack({ data, slackKey, events }) {
variant="subtitle"
sx={{ fontSize: [1, '16px', '24px'] }}
>
- Coding doesn’t have to be a solitary activity. At Hack Club, we
- make things together and in our Slack, you’ll find awesome people to
- hangout with too. Code together, find your programming community, or
- just hang out.
+ Coding doesn’t have to be a solitary activity. At Hack Club,
+ we make remarkable things together, and in our Slack you’ll find
+ awesome people to hang out with too. Code together, find your programming
+ community, dream up something wild, or just #lounge.
Occasionally we invite someone we really want to speak to (like Sal
From 98e08d2820fc9454dca064e95a0260e917755e40 Mon Sep 17 00:00:00 2001
From: Kevin Yang
Date: Sat, 13 Apr 2024 19:08:23 -0400
Subject: [PATCH 02/23] swapped out project types for Bin
---
pages/bin.js | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/pages/bin.js b/pages/bin.js
index a9a0ff9c..446ce66c 100644
--- a/pages/bin.js
+++ b/pages/bin.js
@@ -234,13 +234,15 @@ export default function Bin() {
cursor={false}
sequence={[
// Same substring at the start will only be typed out once, initially
- 'an RC car',
+ 'a laser guided nerf gun',
1000, // wait 1s before replacing "Mice" with "Hamsters"
'a clap activated lamp',
1000,
- 'a keyboard',
+ 'a temperature activated Febreeze can',
1000,
- 'an alarm clock',
+ 'a flame actuated speaker',
+ 1000,
+ 'a light dependant door',
1000
]}
repeat={Infinity}
From f5739fd730841ff336a28fabd04191cdf8c6cd55 Mon Sep 17 00:00:00 2001
From: Max Wofford
Date: Sat, 13 Apr 2024 20:59:33 -0400
Subject: [PATCH 03/23] Fix Febreeze typo
---
pages/bin.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pages/bin.js b/pages/bin.js
index 446ce66c..490c88e0 100644
--- a/pages/bin.js
+++ b/pages/bin.js
@@ -238,7 +238,7 @@ export default function Bin() {
1000, // wait 1s before replacing "Mice" with "Hamsters"
'a clap activated lamp',
1000,
- 'a temperature activated Febreeze can',
+ 'a temperature activated Febreze can',
1000,
'a flame actuated speaker',
1000,
From 3321a26827e92758b96edf5b3dc257c29de15492 Mon Sep 17 00:00:00 2001
From: Max Wofford
Date: Sat, 13 Apr 2024 21:02:51 -0400
Subject: [PATCH 04/23] Fix accidental required
---
components/bin/rsvp-form.js | 2 --
1 file changed, 2 deletions(-)
diff --git a/components/bin/rsvp-form.js b/components/bin/rsvp-form.js
index 81e1744f..1799d982 100644
--- a/components/bin/rsvp-form.js
+++ b/components/bin/rsvp-form.js
@@ -40,7 +40,6 @@ export default function RsvpForm() {
@@ -49,7 +48,6 @@ export default function RsvpForm() {
From dbd22dcad59a1e0653d4220849416da410610d2d Mon Sep 17 00:00:00 2001
From: Sam Poder
Date: Sun, 14 Apr 2024 14:05:47 -0700
Subject: [PATCH 05/23] Add Kara To Acknowledgements
---
pages/team.js | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/pages/team.js b/pages/team.js
index d5485a29..afa6d9e5 100644
--- a/pages/team.js
+++ b/pages/team.js
@@ -301,6 +301,13 @@ export default function Team({ team }) {
img="/team/ced.png"
pronouns="he/him"
/>
+
Date: Sun, 14 Apr 2024 21:07:38 -0400
Subject: [PATCH 06/23] Add waitlist copy
---
pages/fiscal-sponsorship/apply/index.js | 17 +++++++++++++++++
pages/fiscal-sponsorship/apply/success.js | 4 ++--
pages/fiscal-sponsorship/index.js | 7 ++++---
3 files changed, 23 insertions(+), 5 deletions(-)
diff --git a/pages/fiscal-sponsorship/apply/index.js b/pages/fiscal-sponsorship/apply/index.js
index b6023368..61e57aac 100644
--- a/pages/fiscal-sponsorship/apply/index.js
+++ b/pages/fiscal-sponsorship/apply/index.js
@@ -36,6 +36,23 @@ export default function Apply() {
+
+
+ We're excited to take on more organizations, however, our applications are currently backlogged.
+ By joining our waitlist, we will contact you in the future. HCB is currently prioritizing Hack Clubbers-ran initiatives and FIRST teams.
+
+
+
- We’ll review your application and get back to you within two
- business days.
+ As of April 12 2024, are waitlisting all new HCB applications, due to operational capacity.
+ We'll review your application and get back to you when we can!
diff --git a/pages/fiscal-sponsorship/index.js b/pages/fiscal-sponsorship/index.js
index d4dfa72a..0b00d71e 100644
--- a/pages/fiscal-sponsorship/index.js
+++ b/pages/fiscal-sponsorship/index.js
@@ -241,10 +241,11 @@ export default function Page() {
sx={{
bg: 'blue',
backgroundImage: theme => theme.util.gx('cyan', 'blue'),
+ fontSize: [16, 16, 32],
lineHeight: 0.9
}}
>
- Apply now
+ Sign up for the waitlist
From 2b29e3cbd45cf397f9d6957ee5ea08e97342b7b1 Mon Sep 17 00:00:00 2001
From: Cheru Berhanu
Date: Sun, 14 Apr 2024 21:33:33 -0400
Subject: [PATCH 07/23] Update projects.js
---
components/slack/projects.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/components/slack/projects.js b/components/slack/projects.js
index fe91baa3..aafe4149 100644
--- a/components/slack/projects.js
+++ b/components/slack/projects.js
@@ -2,7 +2,7 @@ const projects = [
{
title: 'Brainwave device for thought-based computer interaction.',
description:
- 'The team of teens behind BCI is building both the hardware and software for a brainwave reading device to interact with computers using thoughts',
+ 'The team of teens behind Monolith BCI is building both the hardware and software for a brainwave reading device to interact with computers using thoughts',
img: 'bci',
color: ['#ec3750', '#F58695'],
itemId: 0
From b0328398e24e0fe313f2ef6ff9319a83ea700ce6 Mon Sep 17 00:00:00 2001
From: Cheru Berhanu
Date: Sun, 14 Apr 2024 21:35:25 -0400
Subject: [PATCH 08/23] Update slack.js
---
pages/slack.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pages/slack.js b/pages/slack.js
index b5e7c3be..d571b0ab 100644
--- a/pages/slack.js
+++ b/pages/slack.js
@@ -141,7 +141,7 @@ const SlackPage = () => {
person="JC"
img="https://ca.slack-edge.com/T0266FRGM-U03MNFDRSGJ-e6fb939acfd8-512"
age={17}
- location="CT"
+ location="MA"
/>
Date: Mon, 15 Apr 2024 06:43:42 +0000
Subject: [PATCH 09/23] Bump @apollo/client from 3.9.9 to 3.9.11
Bumps [@apollo/client](https://github.com/apollographql/apollo-client) from 3.9.9 to 3.9.11.
- [Release notes](https://github.com/apollographql/apollo-client/releases)
- [Changelog](https://github.com/apollographql/apollo-client/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apollographql/apollo-client/compare/v3.9.9...v3.9.11)
---
updated-dependencies:
- dependency-name: "@apollo/client"
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 19 +++++--------------
2 files changed, 6 insertions(+), 15 deletions(-)
diff --git a/package.json b/package.json
index e7341447..d3563cb7 100644
--- a/package.json
+++ b/package.json
@@ -12,7 +12,7 @@
"format": "prettier --write ."
},
"dependencies": {
- "@apollo/client": "^3.9.9",
+ "@apollo/client": "^3.9.11",
"@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.5",
"@github/time-elements": "^4.0.0",
diff --git a/yarn.lock b/yarn.lock
index 86add474..8baf07ab 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -15,10 +15,10 @@
"@jridgewell/gen-mapping" "^0.3.0"
"@jridgewell/trace-mapping" "^0.3.9"
-"@apollo/client@^3.9.9":
- version "3.9.9"
- resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.9.9.tgz#38f983a1ad24e2687abfced0a9c1c3bef8d32616"
- integrity sha512-/sMecU/M0WK9knrguts1lSLV8xFKzIgOMVb4mi6MOxgJXjliDB8PvOtmXhTqh2cVMMR4TzXgOnb+af/690zlQw==
+"@apollo/client@^3.9.11":
+ version "3.9.11"
+ resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.9.11.tgz#737e5c35c21d6f3b78423033ad81837a8a6992e0"
+ integrity sha512-H7e9m7cRcFO93tokwzqrsbnfKorkpV24xU30hFH5u2g6B+c1DMo/ouyF/YrBPdrTzqxQCjTUmds/FLmJ7626GA==
dependencies:
"@graphql-typed-document-node/core" "^3.1.1"
"@wry/caches" "^1.0.0"
@@ -8239,16 +8239,7 @@ string-hash@1.1.3:
resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b"
integrity sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==
-"string-width-cjs@npm:string-width@^4.2.0":
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
- dependencies:
- emoji-regex "^8.0.0"
- is-fullwidth-code-point "^3.0.0"
- strip-ansi "^6.0.1"
-
-string-width@^4.1.0:
+"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
From a4fe50f970938fac9b5daf6a7b6c53351e8e575c Mon Sep 17 00:00:00 2001
From: Malted
Date: Mon, 15 Apr 2024 10:24:44 -0400
Subject: [PATCH 10/23] Change success waitlist message
---
pages/fiscal-sponsorship/apply/success.js | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/pages/fiscal-sponsorship/apply/success.js b/pages/fiscal-sponsorship/apply/success.js
index 3b8ff291..b0599c0f 100644
--- a/pages/fiscal-sponsorship/apply/success.js
+++ b/pages/fiscal-sponsorship/apply/success.js
@@ -51,8 +51,9 @@ export default function ApplicationSuccess() {
- As of April 12 2024, are waitlisting all new HCB applications, due to operational capacity.
- We'll review your application and get back to you when we can!
+ As of April 12 2024, are waitlisting all new HCB applications.
+ We'll review your application and get back to you in the future!
+ HCB is currently prioritizing Hack Clubbers-ran initiatives and FIRST teams.
From 53ab2a02d6bac869efda9932484b95e0898bc6d5 Mon Sep 17 00:00:00 2001
From: Gary Tou
Date: Mon, 15 Apr 2024 13:40:42 -0700
Subject: [PATCH 11/23] Copy edits
---
pages/fiscal-sponsorship/apply/index.js | 42 ++++++++++++++---------
pages/fiscal-sponsorship/apply/success.js | 7 ++--
pages/fiscal-sponsorship/index.js | 4 +--
3 files changed, 31 insertions(+), 22 deletions(-)
diff --git a/pages/fiscal-sponsorship/apply/index.js b/pages/fiscal-sponsorship/apply/index.js
index 61e57aac..c6164e37 100644
--- a/pages/fiscal-sponsorship/apply/index.js
+++ b/pages/fiscal-sponsorship/apply/index.js
@@ -36,23 +36,6 @@ export default function Apply() {
-
-
- We're excited to take on more organizations, however, our applications are currently backlogged.
- By joining our waitlist, we will contact you in the future. HCB is currently prioritizing Hack Clubbers-ran initiatives and FIRST teams.
-
-
-
+
+
+ Join our waitlist
+
+
+ HCB has onboarded 116 organizations over the past month. We are
+ prioritizing organizations ran by Hack Clubers, teens, FIRST
+ teams, as well as groups with an annual budget greater than $50k.
+
+
+ We are currently do not work with new organizations outside of
+ STEM, Education, and Climate.
+
+
+
Your organization
diff --git a/pages/fiscal-sponsorship/apply/success.js b/pages/fiscal-sponsorship/apply/success.js
index b0599c0f..15f5db84 100644
--- a/pages/fiscal-sponsorship/apply/success.js
+++ b/pages/fiscal-sponsorship/apply/success.js
@@ -51,9 +51,10 @@ export default function ApplicationSuccess() {
- As of April 12 2024, are waitlisting all new HCB applications.
- We'll review your application and get back to you in the future!
- HCB is currently prioritizing Hack Clubbers-ran initiatives and FIRST teams.
+ We are prioritizing organizations ran by Hack Clubers, teens, FIRST
+ teams, as well as groups with an annual budget greater than $50k.
+ If you fall outside of these categories, you will hear back from us
+ in a few weeks.
diff --git a/pages/fiscal-sponsorship/index.js b/pages/fiscal-sponsorship/index.js
index 0b00d71e..43b79c77 100644
--- a/pages/fiscal-sponsorship/index.js
+++ b/pages/fiscal-sponsorship/index.js
@@ -245,7 +245,7 @@ export default function Page() {
lineHeight: 0.9
}}
>
- Sign up for the waitlist
+ Join the waitlist
From 0c79ef90d6d16acedc9b36370b3eca9946e4fdb7 Mon Sep 17 00:00:00 2001
From: Gary Tou
Date: Mon, 15 Apr 2024 13:54:55 -0700
Subject: [PATCH 12/23] fix indent
---
pages/fiscal-sponsorship/index.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pages/fiscal-sponsorship/index.js b/pages/fiscal-sponsorship/index.js
index 43b79c77..9c9a37f9 100644
--- a/pages/fiscal-sponsorship/index.js
+++ b/pages/fiscal-sponsorship/index.js
@@ -241,7 +241,7 @@ export default function Page() {
sx={{
bg: 'blue',
backgroundImage: theme => theme.util.gx('cyan', 'blue'),
- fontSize: [16, 16, 32],
+ fontSize: [16, 16, 32],
lineHeight: 0.9
}}
>
From 93ddfb6a8ef4977c370568f134f4fd1c98395087 Mon Sep 17 00:00:00 2001
From: Gary Tou
Date: Mon, 15 Apr 2024 14:01:58 -0700
Subject: [PATCH 13/23] Mess with font size and padding
due to new copy length
---
pages/fiscal-sponsorship/index.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pages/fiscal-sponsorship/index.js b/pages/fiscal-sponsorship/index.js
index 9c9a37f9..7d6c9587 100644
--- a/pages/fiscal-sponsorship/index.js
+++ b/pages/fiscal-sponsorship/index.js
@@ -604,10 +604,10 @@ export default function Page() {
bg: 'white',
mixBlendMode: 'screen',
color: 'black !important',
- fontSize: [58 * 0.5, 96 * 0.5],
+ fontSize: [36, 64],
width: ['100%', 'auto'],
py: 4,
- px: [4, null, 6],
+ px: [4, null, 5],
lineHeight: 0.9,
textTransform: 'none'
}}
From 1a5d48d316621c647eac24ba4989f241eb4368e3 Mon Sep 17 00:00:00 2001
From: Gary Tou
Date: Mon, 15 Apr 2024 16:32:54 -0700
Subject: [PATCH 14/23] Copy edits from @MelSmith104
---
pages/fiscal-sponsorship/apply/index.js | 8 +++++---
pages/fiscal-sponsorship/apply/success.js | 8 ++++----
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/pages/fiscal-sponsorship/apply/index.js b/pages/fiscal-sponsorship/apply/index.js
index c6164e37..89861bfe 100644
--- a/pages/fiscal-sponsorship/apply/index.js
+++ b/pages/fiscal-sponsorship/apply/index.js
@@ -132,9 +132,11 @@ export default function Apply() {
Join our waitlist
- HCB has onboarded 116 organizations over the past month. We are
- prioritizing organizations ran by Hack Clubers, teens, FIRST
- teams, as well as groups with an annual budget greater than $50k.
+ HCB has been experiencing some exciting growth and subsequent
+ capacity constaints. We are prioritizing organizations ran by Hack
+ Clubbers, teens, FIRST teams, as well as groups with an annual
+ budget greater than $50k. Please expect to hear back by May 1st,
+ 2024.
We are currently do not work with new organizations outside of
diff --git a/pages/fiscal-sponsorship/apply/success.js b/pages/fiscal-sponsorship/apply/success.js
index 15f5db84..f895d626 100644
--- a/pages/fiscal-sponsorship/apply/success.js
+++ b/pages/fiscal-sponsorship/apply/success.js
@@ -51,10 +51,10 @@ export default function ApplicationSuccess() {
- We are prioritizing organizations ran by Hack Clubers, teens, FIRST
- teams, as well as groups with an annual budget greater than $50k.
- If you fall outside of these categories, you will hear back from us
- in a few weeks.
+ We are prioritizing organizations ran by Hack Clubbers, teens, FIRST
+ teams, as well as groups with an annual budget greater than $50k. If
+ you fall outside of these categories, you will hear back from us by
+ May 1st, 2024.
From fa241194d83acfd7cf6056ed90bf245e8f08e69b Mon Sep 17 00:00:00 2001
From: Gary Tou
Date: Tue, 16 Apr 2024 11:04:01 -0700
Subject: [PATCH 15/23] fix typo
---
pages/fiscal-sponsorship/apply/index.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pages/fiscal-sponsorship/apply/index.js b/pages/fiscal-sponsorship/apply/index.js
index 89861bfe..99232aee 100644
--- a/pages/fiscal-sponsorship/apply/index.js
+++ b/pages/fiscal-sponsorship/apply/index.js
@@ -139,8 +139,8 @@ export default function Apply() {
2024.
- We are currently do not work with new organizations outside of
- STEM, Education, and Climate.
+ We currently do not work with new organizations outside of STEM,
+ Education, and Climate.
From 4b6050b2f94917ef32f134ee8fa29b909ff09107 Mon Sep 17 00:00:00 2001
From: 24c02 <163450896+24c02@users.noreply.github.com>
Date: Wed, 24 Apr 2024 22:05:38 -0400
Subject: [PATCH 16/23] fix another typo
---
pages/fiscal-sponsorship/apply/index.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pages/fiscal-sponsorship/apply/index.js b/pages/fiscal-sponsorship/apply/index.js
index 99232aee..79b490c3 100644
--- a/pages/fiscal-sponsorship/apply/index.js
+++ b/pages/fiscal-sponsorship/apply/index.js
@@ -133,7 +133,7 @@ export default function Apply() {
HCB has been experiencing some exciting growth and subsequent
- capacity constaints. We are prioritizing organizations ran by Hack
+ capacity constraints. We are prioritizing organizations ran by Hack
Clubbers, teens, FIRST teams, as well as groups with an annual
budget greater than $50k. Please expect to hear back by May 1st,
2024.
From 48208159ff7b7b910abde5e185aab6ec8f66be03 Mon Sep 17 00:00:00 2001
From: Max Wofford
Date: Thu, 25 Apr 2024 17:35:23 -0400
Subject: [PATCH 17/23] Update announcement to boba drops
---
pages/index.js | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/pages/index.js b/pages/index.js
index 7ec0a14b..880fb0bf 100644
--- a/pages/index.js
+++ b/pages/index.js
@@ -203,10 +203,10 @@ function Page({
gradient="linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.45))"
/>
Date: Fri, 26 Apr 2024 16:01:30 +0000
Subject: [PATCH 18/23] Bump react-use-websocket from 4.7.0 to 4.8.1
Bumps [react-use-websocket](https://github.com/robtaussig/react-use-websocket) from 4.7.0 to 4.8.1.
- [Release notes](https://github.com/robtaussig/react-use-websocket/releases)
- [Commits](https://github.com/robtaussig/react-use-websocket/commits)
---
updated-dependencies:
- dependency-name: react-use-websocket
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package.json b/package.json
index e7341447..6b9449bc 100644
--- a/package.json
+++ b/package.json
@@ -75,7 +75,7 @@
"react-tooltip": "^4.5.1",
"react-tsparticles": "^2.12.2",
"react-type-animation": "^3.2.0",
- "react-use-websocket": "^4.7.0",
+ "react-use-websocket": "^4.8.1",
"react-wrap-balancer": "^1.1.0",
"recharts": "2.12.2",
"remark": "^15.0.1",
diff --git a/yarn.lock b/yarn.lock
index 86add474..91bd9681 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -7502,10 +7502,10 @@ react-type-animation@^3.2.0:
resolved "https://registry.yarnpkg.com/react-type-animation/-/react-type-animation-3.2.0.tgz#6863d5d60e3beb237f2bd690cceb585402c47e6a"
integrity sha512-WXTe0i3rRNKjmggPvT5ntye1QBt0ATGbijeW6V3cQe2W0jaMABXXlPPEdtofnS9tM7wSRHchEvI9SUw+0kUohw==
-react-use-websocket@^4.7.0:
- version "4.7.0"
- resolved "https://registry.yarnpkg.com/react-use-websocket/-/react-use-websocket-4.7.0.tgz#e45545ed48eb60171bf6401d1884cc80c700a0ea"
- integrity sha512-YjR62jB7vB94IZy5UPBGZSR3c0hxu796q9IuJ0vbNg7InJ7Z84NHOd/LHzVI5nAKtaGy1oqvf8EmjKxX+cNz4A==
+react-use-websocket@^4.8.1:
+ version "4.8.1"
+ resolved "https://registry.yarnpkg.com/react-use-websocket/-/react-use-websocket-4.8.1.tgz#be06a0bc956c6d56391a29cbe2caa6ae8edb5615"
+ integrity sha512-FTXuG5O+LFozmu1BRfrzl7UIQngECvGJmL7BHsK4TYXuVt+mCizVA8lT0hGSIF0Z0TedF7bOo1nRzOUdginhDw==
react-wrap-balancer@^1.1.0:
version "1.1.0"
From 59d2ddc4ea40266659880fb4c23dcf3a56e3cfdd Mon Sep 17 00:00:00 2001
From: Mutammim <58490040+mutammim@users.noreply.github.com>
Date: Sun, 28 Apr 2024 18:37:44 -0400
Subject: [PATCH 19/23] Create apocalypse.js
---
components/index/cards/apocalypse.js | 98 ++++++++++++++++++++++++++++
1 file changed, 98 insertions(+)
create mode 100644 components/index/cards/apocalypse.js
diff --git a/components/index/cards/apocalypse.js b/components/index/cards/apocalypse.js
new file mode 100644
index 00000000..e8db052c
--- /dev/null
+++ b/components/index/cards/apocalypse.js
@@ -0,0 +1,98 @@
+import CardModel from './card-model'
+import { Box, Flex, Grid, Image, Text } from 'theme-ui'
+import Buttons from './button'
+
+/** @jsxImportSource theme-ui */
+
+export default function Apocalypse() {
+ return (
+
+
+
+
+
+
+
+ Downtown Toronto
+
+ May 17–19
+
+
+
+
+ Join Us
+
+
+
+
+ It's 2034, and zombies have taken over! But tech still operates.
+ What would you do?
+
+
+ Join 150 high schoolers for 44 hours at Apocalypse! Take yourself
+ out of the real world and build wacky projects to spark a new age of
+ humanity.
+
+
+
+
+ )
+}
From 9c2bfba6794dc7cefb835a197a6e4bd1b02ececf Mon Sep 17 00:00:00 2001
From: Mutammim <58490040+mutammim@users.noreply.github.com>
Date: Sun, 28 Apr 2024 18:38:43 -0400
Subject: [PATCH 20/23] Update index.js
---
pages/index.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/pages/index.js b/pages/index.js
index 880fb0bf..1b79d863 100644
--- a/pages/index.js
+++ b/pages/index.js
@@ -40,6 +40,7 @@ import Photo from '../components/photo'
import Comma from '../components/comma'
import Haxidraw from '../components/index/cards/haxidraw'
import Onboard from '../components/index/cards/onboard'
+import Apocalypse from '../components/index/cards/apocalypse'
/** @jsxImportSource theme-ui */
@@ -675,6 +676,7 @@ function Page({
+
From 1dfee5debc1664a0f600de4619bf3a0f5b72c8ed Mon Sep 17 00:00:00 2001
From: Mutammim <58490040+mutammim@users.noreply.github.com>
Date: Sun, 28 Apr 2024 18:54:56 -0400
Subject: [PATCH 21/23] Improve mobile-friendliness of Apocalypse card
---
components/index/cards/apocalypse.js | 63 +++++++++++++++-------------
1 file changed, 34 insertions(+), 29 deletions(-)
diff --git a/components/index/cards/apocalypse.js b/components/index/cards/apocalypse.js
index e8db052c..852df47c 100644
--- a/components/index/cards/apocalypse.js
+++ b/components/index/cards/apocalypse.js
@@ -22,28 +22,33 @@ export default function Apocalypse() {
justifyContent: 'space-between'
}}
>
-
-
+
+
May 17–19
-
-
- Join Us
-
+
+ Join Us
+
+
Date: Mon, 29 Apr 2024 16:47:54 -0400
Subject: [PATCH 22/23] Add initial API for wokwi
---
package.json | 1 +
pages/api/bin/wokwi/new.js | 94 ++++++++++++++++++++++++++++++++++++
pages/api/bin/wokwi/parts.js | 29 +++++++++++
yarn.lock | 16 +++++-
4 files changed, 139 insertions(+), 1 deletion(-)
create mode 100644 pages/api/bin/wokwi/new.js
create mode 100644 pages/api/bin/wokwi/parts.js
diff --git a/package.json b/package.json
index f06dc8cb..07dd8a65 100644
--- a/package.json
+++ b/package.json
@@ -37,6 +37,7 @@
"animated-value": "^0.2.4",
"animejs": "^3.2.2",
"axios": "^1.6.7",
+ "camelcase": "^8.0.0",
"cookies-next": "^4.0.0",
"country-list": "^2.3.0",
"country-list-js": "^3.1.8",
diff --git a/pages/api/bin/wokwi/new.js b/pages/api/bin/wokwi/new.js
new file mode 100644
index 00000000..2a21a7ba
--- /dev/null
+++ b/pages/api/bin/wokwi/new.js
@@ -0,0 +1,94 @@
+import AirtablePlus from "airtable-plus"
+
+const createProject = async (partsList=[]) => {
+ const airtable = new AirtablePlus({
+ apiKey: process.env.AIRTABLE_API_KEY,
+ baseID: 'appKjALSnOoA0EmPk',
+ tableName: 'Supported Parts'
+ })
+
+ const parts = [
+ { "type": "board-pi-pico-w", "id": "pico", "top": 0, "left": 0, "attrs": {} }
+ ]
+
+ await Promise.all(partsList.map(async (part) => {
+ const airPart = await airtable.read({
+ filterByFormula: `{Wokwi Name}= "${part}"`,
+ maxRecords: 1
+ })
+ return airPart[0].fields['Wokwi Name'].split(',').forEach((name, i) => {
+ parts.push({
+ type: name,
+ id: name + '-' + i,
+ left: i * 100, // this is roughtly the width of most parts
+ })
+ })
+ }))
+
+ const body = JSON.stringify({
+ name: "The Bin!",
+ unlisted: false,
+ files: [{
+ name: "help.txt",
+ content: `
+# Welcome to The Bin!
+
+Build
+ `
+ },
+ {
+ name: "sketch.ino",
+ content: `// Now turn this trash into treasure!
+// Want some help? You can chat with us on the Hack Club Slack in the #electronics channel
+void setup() {
+ // put your setup code here, to run once:
+ Serial1.begin(115200);
+ Serial1.println("Hello, Raspberry Pi Pico W!");
+}
+void loop() {
+ // put your main code here, to run repeatedly:
+ delay(1); // this speeds up the simulation
+}`
+ }, {
+ name: "diagram.json",
+ content: JSON.stringify({
+ "version": 1,
+ "author": "The Bin - Hack Club",
+ "editor": "wokwi",
+ "parts": parts,
+ "connections": [["pico:GP0", "$serialMonitor:RX", "", []], ["pico:GP1", "$serialMonitor:TX", "", []]], "dependencies": {}
+ }, null, 2)
+ }],
+ })
+
+ const response = await fetch('https://wokwi.com/api/projects/save', {
+ method: 'POST',
+ cors: 'no-cors',
+ headers: {
+ 'Content-Type': 'application/json',
+ 'Referer': 'https://wokwi.com/projects/new/pi-pico-w',
+ 'User-Agent': 'Hack Club - contact max@hackclub.com for any complaints!'
+ },
+ body
+ }).catch((e) => {
+ console.log(e)
+ })
+
+ const data = await response.json()
+ const { projectId } = data
+
+ return `https://wokwi.com/projects/${projectId}`
+}
+
+export default async function handler(req, res) {
+ if (req.method === 'POST') {
+ const { parts } = req.body
+
+ const shareLink = await createProject(parts)
+ if (shareLink) {
+ res.status(200).json({ shareLink })
+ } else {
+ res.status(500).json({ error: 'Failed to create project' })
+ }
+ }
+}
\ No newline at end of file
diff --git a/pages/api/bin/wokwi/parts.js b/pages/api/bin/wokwi/parts.js
new file mode 100644
index 00000000..f01bdbd1
--- /dev/null
+++ b/pages/api/bin/wokwi/parts.js
@@ -0,0 +1,29 @@
+import AirtablePlus from "airtable-plus"
+import camelcase from "camelcase"
+
+const camelizeObject = (obj) => {
+ Object.keys(obj).forEach(key => {
+ obj[camelcase(key)] = obj[key]
+ if (key !== camelcase(key)) {
+ delete obj[key]
+ }
+ })
+ return obj
+}
+
+const wokwiParts = async () => {
+ const airtable = new AirtablePlus({
+ apiKey: process.env.AIRTABLE_API_KEY,
+ baseID: 'appKjALSnOoA0EmPk',
+ tableName: 'Supported Parts'
+ })
+
+ const records = await airtable.read()
+ const parts = records.map(record => camelizeObject(record.fields))
+ return parts
+}
+
+export default async function handler(req, res) {
+ const data = await wokwiParts()
+ res.status(200).json(data)
+}
\ No newline at end of file
diff --git a/yarn.lock b/yarn.lock
index 2ee0c636..96487326 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3216,6 +3216,11 @@ camelcase@^5.3.1:
resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
+camelcase@^8.0.0:
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-8.0.0.tgz#c0d36d418753fb6ad9c5e0437579745c1c14a534"
+ integrity sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==
+
camelize@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3"
@@ -8239,7 +8244,16 @@ string-hash@1.1.3:
resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b"
integrity sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==
-"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0:
+"string-width-cjs@npm:string-width@^4.2.0":
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+ integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
+ dependencies:
+ emoji-regex "^8.0.0"
+ is-fullwidth-code-point "^3.0.0"
+ strip-ansi "^6.0.1"
+
+string-width@^4.1.0:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
From 7817ebe44acf340c80331bcb8fe9ebcbd1a4248e Mon Sep 17 00:00:00 2001
From: Max Wofford
Date: Mon, 29 Apr 2024 23:26:42 -0400
Subject: [PATCH 23/23] Create new wokwi help message
---
pages/api/bin/wokwi/new.js | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/pages/api/bin/wokwi/new.js b/pages/api/bin/wokwi/new.js
index 2a21a7ba..6fc38f34 100644
--- a/pages/api/bin/wokwi/new.js
+++ b/pages/api/bin/wokwi/new.js
@@ -29,11 +29,21 @@ const createProject = async (partsList=[]) => {
name: "The Bin!",
unlisted: false,
files: [{
- name: "help.txt",
- content: `
-# Welcome to The Bin!
+ name: "help.md",
+ content: `# Welcome to The Bin! 🦝
-Build
+Now that you've thrown some parts into The Bin, it's time to turn that trash into treasure! 🗑️➡️💎
+
+Wire up your parts and write some code to make them work together.
+
+If you'd like a tutorial, check out some sample projects:
+https://jams.hackclub.com/tags/the-bin
+
+You can get help by chatting with other high schoolers on the Hack Club Slack in the #electronics channel:
+👉 https://hackclub.com/slack 👈
+
+Once you're ready build your design IRL, click the "Share" button and submit your design:
+https://hackclub.com/bin/submit
`
},
{