From 751102ef12591f3492bdce8da1b6c57943544409 Mon Sep 17 00:00:00 2001
From: nora <163450896+24c02@users.noreply.github.com>
Date: Mon, 8 Dec 2025 18:16:02 -0500
Subject: [PATCH] Point /slack to auth.hackclub.com (#1745)
---
components/slack/header.js | 74 +++++++++++++++++++++++++++++++++-----
components/slack/join.js | 4 ++-
2 files changed, 68 insertions(+), 10 deletions(-)
diff --git a/components/slack/header.js b/components/slack/header.js
index ca0107ca..f86b1a23 100644
--- a/components/slack/header.js
+++ b/components/slack/header.js
@@ -1,9 +1,11 @@
-import { Box, Grid, Heading } from 'theme-ui'
+import { Box, Card, Grid, Heading, Text } from 'theme-ui'
import SlideUp from '../slide-up'
import JoinForm from './join-form'
import usePrefersMotion from '../../lib/use-prefers-motion'
import useHasMounted from '../../lib/use-has-mounted'
+const useWaitlist = process.env.NEXT_PUBLIC_OPEN !== 'true'
+
const Content = () => (
(
-
+ {useWaitlist ? (
+
+ ) : (
+
+
+ Join thousands of teen hackers chatting, coding, and building together!
+
+ t.util.gx('orange', 'red'),
+ color: 'white',
+ fontSize: [2, 3],
+ px: 4,
+ py: 3,
+ borderRadius: 'extra',
+ fontWeight: 'bold',
+ textDecoration: 'none',
+ display: 'inline-block',
+ position: 'relative',
+ overflow: 'hidden',
+ transition: 'transform 0.125s ease-in-out',
+ ':hover': {
+ transform: 'scale(1.05)'
+ },
+ '::before': {
+ content: '""',
+ position: 'absolute',
+ top: 0,
+ left: 0,
+ width: '100%',
+ height: '100%',
+ background: 'linear-gradient(120deg, transparent 10%, rgba(255,255,255,0.2) 50%, transparent 90%)',
+ transform: 'translateX(-100%)',
+ animation: 'shimmer 2.5s ease-in-out infinite'
+ },
+ '@keyframes shimmer': {
+ '0%': { transform: 'translateX(-100%)' },
+ '100%': { transform: 'translateX(100%)' }
+ }
+ }}
+ >
+ Join the Slack →
+
+
+ )}
)
diff --git a/components/slack/join.js b/components/slack/join.js
index 587e5b10..3f983d35 100644
--- a/components/slack/join.js
+++ b/components/slack/join.js
@@ -1,6 +1,8 @@
import { Box, Image, Link, Text } from 'theme-ui'
import Icon from '@hackclub/icons'
+const useWaitlist = process.env.NEXT_PUBLIC_OPEN !== 'true'
+
export default function Join() {
return (