From c2a8beb4bdd2119d8c51a3a242124e2deea56981 Mon Sep 17 00:00:00 2001 From: Ella Date: Fri, 22 Jul 2022 12:14:34 -0400 Subject: [PATCH] Initial work on hackathons page * Stage component(for the icons in the gradient cards) * Make Scroll-hint component shared between hackathons and bank * Add hackathons to nav * layout for landing and rundown on hacakthons page --- components/bank/landing.js | 2 +- components/hackathons/landing.js | 128 +++++++++++++++++++++++++++ components/hackathons/rundown.js | 67 ++++++++++++++ components/nav.js | 3 + components/{bank => }/scroll-hint.js | 0 components/stage.js | 41 +++++++++ next.config.js | 7 +- pages/hackathons.js | 34 +++++++ pages/index.js | 60 +++---------- 9 files changed, 294 insertions(+), 48 deletions(-) create mode 100644 components/hackathons/landing.js create mode 100644 components/hackathons/rundown.js rename components/{bank => }/scroll-hint.js (100%) create mode 100644 components/stage.js create mode 100644 pages/hackathons.js diff --git a/components/bank/landing.js b/components/bank/landing.js index 612eaa0a..038178c5 100644 --- a/components/bank/landing.js +++ b/components/bank/landing.js @@ -1,6 +1,6 @@ import { Box, Button, Heading, Link, Text, Container, Badge } from 'theme-ui' import Fade from 'react-reveal/Fade' -import ScrollHint from './scroll-hint' +import ScrollHint from '../scroll-hint' import Image from 'next/image' import hero from '../../public/bank/bg.webp' diff --git a/components/hackathons/landing.js b/components/hackathons/landing.js new file mode 100644 index 00000000..6768c2cb --- /dev/null +++ b/components/hackathons/landing.js @@ -0,0 +1,128 @@ +import { Box, Button, Heading, Link, Text, Container, Badge } from 'theme-ui' +import Fade from 'react-reveal/Fade' +import ScrollHint from '../scroll-hint' +import Image from 'next/image' +import hero from '../../public/bank/bg.webp' + +export default function Landing() { + return ( + <> + + + + + + + This semester, we're helping to kickstart + + + A renaissance of IRL{' '} + high school hackathons. + + + lakjsdf;lajsdf;lkjasd;lfja;sldkjfalskdjf;l + + +
+ +
+ + + + +
+
+ + ) +} + +function Slide({ children }) { + return ( + + woof + {children} + + ) +} + +function Vignette() { + return ( + + ) +} + +function Highlight(props) { + return ( + + ) +} diff --git a/components/hackathons/rundown.js b/components/hackathons/rundown.js new file mode 100644 index 00000000..a0fc5a0e --- /dev/null +++ b/components/hackathons/rundown.js @@ -0,0 +1,67 @@ +import { Card, Heading, Grid, Text } from 'theme-ui' +import Stage from '../stage' + +export default function Rundown() { + return ( + a, > div': { + borderRadius: 'extra', + boxShadow: 'elevated', + px: [3, null, 4], + py: [4, null, 5] + }, + span: { + boxShadow: + '-2px -2px 6px rgba(255,255,255,0.125), inset 2px 2px 6px rgba(0,0,0,0.1), 2px 2px 8px rgba(0,0,0,0.0625)' + }, + svg: { fill: 'currentColor' } + }} + > + + + + + + + + + + + ) +} diff --git a/components/nav.js b/components/nav.js index 9ebe37eb..ef44e434 100644 --- a/components/nav.js +++ b/components/nav.js @@ -144,6 +144,9 @@ const Navigation = props => ( Bank + + Hackathons + Donate diff --git a/components/bank/scroll-hint.js b/components/scroll-hint.js similarity index 100% rename from components/bank/scroll-hint.js rename to components/scroll-hint.js diff --git a/components/stage.js b/components/stage.js new file mode 100644 index 00000000..67c8383a --- /dev/null +++ b/components/stage.js @@ -0,0 +1,41 @@ +import { Box, Heading, Text } from 'theme-ui' +import Icon from '../components/icon' + +const Stage = ({ icon, color, name, desc, children, ...props }) => ( + + {children || ( + + + + )} + + + {name} + + + {desc} + + + +) + +export default Stage diff --git a/next.config.js b/next.config.js index 131c12e7..3417b6fa 100755 --- a/next.config.js +++ b/next.config.js @@ -12,6 +12,7 @@ const nextConfig = { 'cdn.glitch.com', 'cloud-k18c7grqc-hack-club-bot.vercel.app', 'cloud-kcloydjv0-hack-club-bot.vercel.app', + 'cloud-dtijd5g0u-hack-club-bot.vercel.app' ] }, webpack: (config, { isServer }) => { @@ -50,7 +51,11 @@ const nextConfig = { { source: '/hack_camp/', destination: '/camp/', permanent: true }, { source: '/branding/', destination: '/brand/', permanent: true }, { source: '/ama/', destination: '/amas/', permanent: false }, - { source: '/open-source/', destination: '/opensource/', permanent: false }, + { + source: '/open-source/', + destination: '/opensource/', + permanent: false + }, { source: '/coc/', destination: '/conduct/', permanent: true }, { source: '/code_of_conduct/', diff --git a/pages/hackathons.js b/pages/hackathons.js new file mode 100644 index 00000000..488410aa --- /dev/null +++ b/pages/hackathons.js @@ -0,0 +1,34 @@ +import { Box, Container, Heading, Grid } from 'theme-ui' +import Meta from '@hackclub/meta' +import Head from 'next/head' +import ForceTheme from '../components/force-theme' +import Nav from '../components/nav' +import Footer from '../components/footer' +import Stage from '../components/stage' + +import Landing from '../components/hackathons/landing' +import Rundown from '../components/hackathons/rundown' + +export default function Bank() { + return ( + <> + +