update the hackathon grant copy and make clear the program has ended

This commit is contained in:
rluo.dev 2025-01-05 20:52:20 -08:00
parent ab5909417c
commit dac13044c4
No known key found for this signature in database
7 changed files with 29 additions and 323 deletions

View file

@ -1,169 +0,0 @@
import { Button, Box, Container, Text, Link, Badge } from 'theme-ui'
import NextLink from 'next/link'
import { Fade } from 'react-reveal'
import Icon from '../../icon'
const Content = () => (
<>
<Container
variant="container"
sx={{
display: 'flex',
flexDirection: ['column'],
width: ['100%', '100%', '100%', '85%'],
color: 'smoke',
px: 4,
py: [4, 5, 6],
borderRadius: 'default',
position: 'relative'
}}
>
<Container maxWidth={28} sx={{ mx: 0, pt: 4, pb: 2 }}>
<Text variant="eyebrow">HCB</Text>
<br />
<Text as="span" variant="title">
Grants, waived fees, and more!
</Text>
</Container>
<List>
<ListItem
knew
icon="payment"
leadText={<>$500 grants.</>}
body={
<>
Running on HCB? Get a $500 grant once you have a venue, provided
by Hack Club.
<NextLink href="/hackathons/grant">
<Link sx={{ ml: 2, cursor: 'pointer' }}>Learn more &rarr;</Link>
</NextLink>
</>
}
/>
<ListItem
knew
icon="bolt"
leadText="All fees waived."
body={`
Run your hackathon on HCB for free. All the money you raise goes
directly towards your hackathon.`}
/>
<ListItem
icon="rep"
leadText="A suite of free tools."
body={`
When you join HCB, you'll have access to a suite of free tools including
debit cards, a domain name, stickers, and more.`}
/>
</List>
<NextLink href="/fiscal-sponsorship" passHref>
<Button as="a" variant="outlineLg" sx={{ width: [null, null, 500] }}>
Apply&nbsp;
<Box as="span" sx={{ display: ['none', 'inline', ''] }}>
for HCB
</Box>{' '}
</Button>
</NextLink>
</Container>
</>
)
const List = ({ children }) => (
<Box sx={{ maxWidth: 800 }}>
<ol style={{ listStyle: 'none', paddingLeft: 0 }}>{children}</ol>
</Box>
)
const ListItem = ({ icon, leadText, body, knew }) => (
<Fade bottom>
<li
style={{
lineHeight: 1.25,
display: 'flex',
pl: 0
}}
>
<Icon
glyph={icon}
size={45}
sx={{
color: 'primary',
flexShrink: 'none',
flexShrink: 0,
mr: 2
}}
/>
<Box sx={{ display: 'flex', flexDirection: 'column' }}>
<Box
sx={{
display: [null, null, 'flex'],
alignItems: 'center'
}}
>
<Text
as="span"
sx={{ fontWeight: 'bold', fontSize: [24, 32], lineHeight: 1 }}
>
{leadText}
</Text>
{knew && (
<Badge
as="span"
variant="pill"
sx={{
zIndex: '1',
bg: 'muted',
color: 'steel',
fontWeight: 'normal',
ml: 2
}}
>
New!
</Badge>
)}
</Box>
<Text variant="lead">{body}</Text>
</Box>
</li>
</Fade>
)
const Cover = () => (
<Box
sx={{
position: 'absolute',
bottom: 0,
top: 0,
left: 0,
right: 0,
backgroundImage:
'linear-gradient(to bottom,rgba(0, 0, 0, 0),rgba(0, 0, 0, 0.45) 25%,rgba(0, 0, 0, 0.75) 50%, rgba(0, 0, 0, 0.9) 100%)',
opacity: 0.875,
zIndex: 0
}}
/>
)
const Static = () => (
<Box
as="section"
id="slack"
sx={{
position: 'relative',
overflow: 'hidden',
backgroundImage: `url('/fiscal-sponsorship/bg.webp')`,
backgroundSize: 'cover'
}}
>
<Cover />
<Content />
</Box>
)
const Money = () => {
return <Static />
}
export default Money

View file

@ -1,78 +0,0 @@
import Icon from '@hackclub/icons'
import { useRef, useState } from 'react'
import { Box, Label, Input, Button, Text } from 'theme-ui'
const Form = () => {
const [submitted, setSubmitted] = useState(false)
const formRef = useRef(null)
const handleSubmit = async e => {
e.preventDefault()
await fetch(
'https://airtable-forms-proxy.hackclub.dev/api/appEzv7w2IBMoxxHe/Hackathon%20Grant%20Waitlist',
{
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
Email: e.target.email.value
})
}
)
formRef.current.reset()
setSubmitted(true)
}
return (
<Box
sx={{ textAlign: 'center', maxWidth: '24rem', mx: 'auto' }}
as="form"
ref={formRef}
onSubmit={handleSubmit}
>
<Label htmlFor="email" sx={{ color: 'smoke', fontSize: 18 }}>
Your email
<Input
id="email"
placeholder="orpheus@hackclub.com"
name="email"
type="email"
sx={{
bg: 'darkless',
my: 0,
mt: 1,
mb: 2
}}
required
/>
</Label>
{submitted ? (
<Text color="smoke" sx={{ display: 'block', mt: 3 }}>
<Box color="green">
<Icon glyph="checkmark" />
</Box>
Thanks! We'll send you an email in the coming weeks when applications
have opened.
</Text>
) : (
<>
<Button variant="outline">Get notified</Button>
<Text
variant="caption"
sx={{ color: 'muted', fontSize: 16, display: 'block', mt: 3 }}
>
We'll send you an email when grant applications are open no spam or
unexpected marketing emails.
</Text>
</>
)}
</Box>
)
}
export default Form

View file

@ -58,7 +58,7 @@ export default function KeepExploring() {
<Container>
<Grid
columns={[null, '1fr 2fr']}
columns={[null, '1fr 1fr']}
my={[3, 5]}
sx={{ maxWidth: 'copyUltra', mx: 'auto' }}
>
@ -83,9 +83,6 @@ export default function KeepExploring() {
Windy&nbsp;City&nbsp;Hacks
</a>
. The&nbsp;hacks the limit.
<Box as="div" sx={{ mt: 3 }}></Box>
Hack Club is providing grants, support, and more, to help you run
the next amazing hackathon.
</Text>
</Grid>
</Container>

View file

@ -31,7 +31,7 @@ export default function Recap() {
pt={[3, 4]}
pb={[5, 6]}
gap={[4, 3, 4]}
columns={[1, null, 3]}
columns={[1, null, 2]}
sx={{
textAlign: 'left',
'> a, > div': {
@ -64,29 +64,6 @@ export default function Recap() {
desc="Chat in Slack for support with organizing your hackathon, from finding a venue to marketing your event."
/>
</Card>
<Card
variant="interactive"
as="a"
href="/hackathons/grant"
sx={{
background:
'linear-gradient(to bottom, rgba(255, 140, 55, 0.9) 0%, rgba(236, 55, 80, 0.9) 100%)',
color: 'white',
svg: { color: 'rgb(236, 55, 80)' }
}}
>
<Stage
icon="bank-account"
color="white"
name="$500 grants"
desc={
<>
Join HCB to receive a $500 grant for your hackathon and a suite
of financial tools.
</>
}
/>
</Card>
<Card
variant="interactive"
as="a"

View file

@ -7,25 +7,9 @@ desc="Looking to get hackathon/nonprofit sponsorship from Hack Club? Heres th
img="https://workshop-cards.hackclub.com/Sponsorship.png?brand=HQ&fontSize=300px"
path="sponsorship.mdx">
<Announcement
as="a"
copy="Is your hackathon in person and happening this semester?"
caption="$500 grants and more, with support from Hack Club and FIRST®."
href="/hackathons/grant"
iconLeft="event-code"
color="primary"
sx={{
maxWidth: 'container',
mx: '0',
mt: '0',
background: '#f9fafc !important',
boxShadow: '0 4px 8px rgb(0 0 0 / 13%)'
}}
/>
_(To summarize: were a donor-supported nonprofit so outside of planned grant programs, we don't provide financial support to hackathons/other nonprofits. However, there are all kinds of ways wed love to help out your project, so read on.)_
[Hack Club](https://hackclub.com/) is an independent nonprofit, supported by donors, with a responsibility to our supporters to spend our budget directly on our core programs. Therefore, as much as wed like to, **were not in a position to provide financial support to hackathons/other nonprofits**. We occasionally run grant programs, like the [$500 grant for IRL high school hackathons](https://hackclub.com/hackathons/grant). We wish you the best of luck in your sponsorship search—we recommend [Megan Cuis “Meginar”](https://youtu.be/tOmXzA4reTY) and [Lachlan Campbells Flagship talk](https://notebook.lachlanjc.com/2020-01-19_how_to_start_your_first_hackathon/) if youre looking for advice.
[Hack Club](https://hackclub.com/) is an independent nonprofit, supported by donors, with a responsibility to our supporters to spend our budget directly on our core programs. Therefore, as much as wed like to, **were not in a position to provide financial support to hackathons/other nonprofits**. We occasionally run grant programs, like the [$500 grant for IRL high school hackathons](https://hackclub.com/hackathons/grant) which has ended as of December 31st, 2024. We wish you the best of luck in your sponsorship search—we recommend [Megan Cuis “Meginar”](https://youtu.be/tOmXzA4reTY) and [Lachlan Campbells Flagship talk](https://notebook.lachlanjc.com/2020-01-19_how_to_start_your_first_hackathon/) if youre looking for advice.
If youre looking for [fiscal sponsorship](https://en.wikipedia.org/wiki/Fiscal_sponsorship) (aka becoming a legal nonprofit), weve got your back—[HCB](https://hackclub.com/fiscal-sponsorship/) will set you up with a nonprofit fund, legal entity, debit cards for your team, automated taxes/accounting, G Suite, an online donation form, ACH/check sending/receiving, discounts on stickers & software for your team, and great support. There are no upfront fees. Sign up at <https://hackclub.com/fiscal-sponsorship/>.

View file

@ -5,10 +5,10 @@ import ForceTheme from '../../components/force-theme'
import Nav from '../../components/nav'
import Footer from '../../components/footer'
import MSparkles from '../../components/sparkles/money'
import Announcement from '../../components/announcement'
import NextLink from 'next/link'
import { Link, Text, Button, Card } from 'theme-ui'
import Icon from '@hackclub/icons'
import Form from '../../components/hackathons/grant/form'
import Apply from '../../components/hackathons/grant/apply'
import Zoom from 'react-reveal/Zoom'
@ -56,15 +56,14 @@ const Requirement = ({ title, children, checkmark, background, size }) => {
}
const HackathonGrant = () => {
let open = true // applications are open
let channel = 'https://hackclub.slack.com/archives/C03TS0VKFPZ' // #hackathon-grants
let open = false // applications are open
return (
<>
<Meta
as={Head}
title="Hackathon Grant"
description="Hack Club is providing $500 grants to in-person high school hackathons happening until December 31st, 2024."
description="Hack Club provided $500 grants to in-person high school hackathons. This program ended December 31st, 2024."
image="https://cloud-7yw9f6xnv-hack-club-bot.vercel.app/0grant.png"
/>
<style>{styles}</style>
@ -131,6 +130,9 @@ const HackathonGrant = () => {
</Flex>
A <MSparkles>$500</MSparkles> grant for your{' '}
<a sx={{ whiteSpace: 'nowrap' }}>in-person</a> hackathon.
<br />
<Text style={{ fontSize: '2.5rem', fontWeight: 'normal' }}>This program ended December 31st, 2024.</Text>
<br />
</Heading>
<Box
sx={{
@ -139,18 +141,22 @@ const HackathonGrant = () => {
my: 4
}}
>
Hack Club is providing $500 grants (and waiving{' '}
Hack Club provided $500 grants (and waived{' '}
<Link href="/fiscal-sponsorship" target="_blank">
HCB
</Link>{' '}
fees) to <a sx={{ whiteSpace: 'nowrap' }}>in-person</a>{' '}
<a sx={{ whiteSpace: 'nowrap' }}>high school</a> hackathons until
December 31st, 2024.
<a sx={{ whiteSpace: 'nowrap' }}>high school</a> hackathons.
</Box>
<Button variant="ctaLg" as="a" href="#apply" sx={{ mt: 2 }}>
{open ? 'Apply Now' : 'Coming Soon'}
</Button>
<Button
<Box
sx={{
fontSize: [2, 4, 4],
textAlign: 'center',
my: 4
}}
>
Want to attend a hackathon?
<Button
variant="ctaLg"
as="a"
href="https://hackathons.hackclub.com"
@ -165,6 +171,7 @@ const HackathonGrant = () => {
<Text sx={{ display: ['none', 'inline'] }}>near you</Text>
</Text>
</Button>
</Box>
</Box>
</Box>
<Container sx={{ py: 5 }}>
@ -374,25 +381,15 @@ const HackathonGrant = () => {
<Link href="/brand" target="_blank">
Hack Club
</Link>
{'.'}.
{'.'}
</Text>
{open ? (
<>
<Apply channel={channel} />
</>
) : (
<>
<Heading
sx={{ textAlign: 'center', mb: 3, fontSize: 5 }}
id="apply"
>
Applications opening soon.
</Heading>
<Form />
</>
)}
<Box as="div" sx={{ mt: 3 }}></Box>
<Heading
sx={{ textAlign: 'center', mb: 3, fontSize: 5 }}
id="apply"
>
This program ended on December 31st, 2024.
</Heading>
</Container>
</Box>
<Zoom>

View file

@ -6,7 +6,6 @@ import Nav from '../../components/nav'
import Footer from '../../components/footer'
import Recap from '../../components/hackathons/recap'
import Slack from '../../components/hackathons/features/slack'
import Money from '../../components/hackathons/features/money'
import Landing from '../../components/hackathons/landing'
import Marketing from '../../components/hackathons/features/marketing'
import Overview from '../../components/hackathons/overview'
@ -33,7 +32,6 @@ export default function Hackathons({ data }) {
<ScrollingHackathons eventData={data} title={true} />
<KeepExploring />
<Money />
<Slack />
<Marketing />
<Container>