Skip to content

Commit

Permalink
Merge branch 'main' into tp/closedRegistrationHandling
Browse files Browse the repository at this point in the history
  • Loading branch information
J164 committed Jan 30, 2025
2 parents 822e59c + 84445d6 commit b15a22a
Show file tree
Hide file tree
Showing 66 changed files with 1,803 additions and 967 deletions.
2 changes: 1 addition & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"extends": "next/core-web-vitals"
"extends": ["next/core-web-vitals", "next/typescript"]
}
27 changes: 27 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: lint

on:
push:
branches: [main, development]
pull_request:
branches: [main, development]

jobs:
lint:
runs-on: ubuntu-latest

strategy:
matrix:
node-version: [20.x]

steps:
- name: Setup repo
uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}

- run: npm ci
- run: npm run lint
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
**/node_modules
**/.next
**/.husky
**/.github
public/*
LICENSE
.prettierignore
Expand Down
11 changes: 2 additions & 9 deletions app/closed/page.tsx
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
import Image from "next/image";
import Link from "next/link";

import SNOWGLOBE from "@/public/registration/track_selection/snowglobe.svg";
import LOGO_TEXTONLY from "@/public/registration/track_selection/logo_textonly.svg";
import BACKGROUND from "@/public/registration/track_selection/background.svg";

import OlympianButton from "@/components/OlympianButton/OlympianButton";

import styles from "@/app/closed/closed.module.scss"
import styles from "@/app/closed/closed.module.scss";

const closed: React.FC = () => {

return (
<main
style={{
Expand All @@ -34,12 +32,7 @@ const closed: React.FC = () => {
<div className={styles.content}>
<h2>Sorry, registration is closed.</h2>
<h2>Check back next year!</h2>
<OlympianButton
text="Back"
link="/"
blue
/>

<OlympianButton text="Back" link="/" blue />
</div>
<div className={styles.spacer}></div>
</div>
Expand Down
8 changes: 1 addition & 7 deletions app/error.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,7 @@ import styles from "./Error.module.scss";
import Link from "next/link";
import clsx from "clsx";

const Error = ({
error,
reset
}: {
error: Error & { digest?: string };
reset: () => void;
}) => {
const Error = ({ error }: { error: Error & { digest?: string } }) => {
const [showDetails, setShowDetails] = useState(false);

const handleToggleDetails = () => {
Expand Down
278 changes: 149 additions & 129 deletions app/olympians/page.tsx
Original file line number Diff line number Diff line change
@@ -1,154 +1,174 @@
"use client";

import styles from "./styles.module.scss";
import Link from "next/link";
import Background from "@/components/Olympians/Background";
import { Metadata } from "next";

export const metadata: Metadata = {
title: "HackIllinois | Olympians"
};
import { useEffect, useState } from "react";
import { getRegistrationStatus } from "@/util/api";
import Head from "next/head";

const AboutProTrack: React.FC = () => {
const [registrationOpen, setRegistrationOpen] = useState(false);

useEffect(() => {
getRegistrationStatus().then(status => {
setRegistrationOpen(status.alive);
});
}, []);

return (
<div className={styles.container}>
<Background />
<section className={styles.proTrackPage}>
<div className={styles.title}>
<h1>
Introducing <br />
<b>
Hack
<span className={styles.emphasizedText}>
Olympians
</span>
</b>
</h1>
</div>
<div className={styles.descriptions}>
<div>
<h2>What are HackOlympians?</h2>
<br></br>
<p>
HackOlympians is an exclusive path tailored for
prospective attendees to dive into a competitively
elevated hackathon atmosphere for an increased prize
value.
<br></br>
<br></br>
It&apos;s a{" "}
<span className={styles.emphasizedText}>
specialized arena for experienced hackers
</span>{" "}
who have mastered the fundamentals and are now
looking to test their skills in a more challenging
environment.
<br></br>
<br></br>
Admission into HackOlympians requires completing our
application, which includes a coding challenge.
</p>
<>
<Head>
<title>HackIllinois | Olympians</title>
</Head>
<div className={styles.container}>
<Background />
<section className={styles.proTrackPage}>
<div className={styles.title}>
<h1>
Introducing <br />
<b>
Hack
<span className={styles.emphasizedText}>
Olympians
</span>
</b>
</h1>
</div>
<div className={styles.spacer}></div>
<div>
<div className={styles.descriptions}>
<div>
<h2>
What are the benefits of being a HackOlympian?
</h2>
<h2>What are HackOlympians?</h2>
<br></br>
<p>
Attendees in this path have the exclusive
opportunity to compete for the{" "}
<span className={styles.emphasizedText}>
grand HackOlympians prize (to be released
soon).
</span>
HackOlympians is an exclusive path tailored for
prospective attendees to dive into a
competitively elevated hackathon atmosphere for
an increased prize value.
<br></br>
<br></br>
Additionally, they will gain access to{" "}
It&apos;s a{" "}
<span className={styles.emphasizedText}>
special networking opportunities
specialized arena for experienced hackers
</span>{" "}
with our event sponsors and the chance to
present their project in a{" "}
<span className={styles.emphasizedText}>
thrilling Shark-Tank inspired showcase
</span>
, among other exciting perks – but spots are
limited, so register soon!
who have mastered the fundamentals and are now
looking to test their skills in a more
challenging environment.
<br></br>
<br></br>
Admission into HackOlympians requires completing
our application, which includes a coding
challenge.
</p>
</div>
<br />
<br />
<div className={styles.spacer}></div>
<div>
<h2>How do I become a HackOlympian?</h2>
<div>
<h2>
What are the benefits of being a
HackOlympian?
</h2>
<br></br>
<p>
Attendees in this path have the exclusive
opportunity to compete for the{" "}
<span className={styles.emphasizedText}>
grand HackOlympians prize (to be
released soon).
</span>
<br></br>
<br></br>
Additionally, they will gain access to{" "}
<span className={styles.emphasizedText}>
special networking opportunities
</span>{" "}
with our event sponsors and the chance to
present their project in a{" "}
<span className={styles.emphasizedText}>
thrilling Shark-Tank inspired showcase
</span>
, among other exciting perks – but spots are
limited, so register soon!
</p>
</div>
<br />
<br />
<div>
<h2>How do I become a HackOlympian?</h2>
<br></br>
<p>
Admission into HackOlympians requires{" "}
{registrationOpen ? (
<Link
prefetch={false}
href="/register/challenge/"
>
completing a special challenge
</Link>
) : (
"completing a special challenge"
)}{" "}
in addition to registering.
<br />
<br />
<i>
Note: You MUST{" "}
<b>
complete the challenge before
submitting registration
</b>
. Once you submit, you can no longer
complete the challenge.
</i>
</p>
</div>
</div>
<div>
<h2>
How is HackOlympians different from standard
HackIllinois attendance?
</h2>
<br></br>
<p>
Admission into HackOlympians requires{" "}
<Link
prefetch={false}
href="/register/challenge/"
>
completing a special challenge
</Link>{" "}
in addition to registering.
<br />
<br />
<i>
Note: You MUST{" "}
<b>
complete the challenge before submitting
registration
</b>
. Once you submit, you can no longer
complete the challenge.
</i>
HackIllinois is a historically welcoming space
for coders of all skill levels, particularly
those who are just starting out. This inclusive
environment encourages beginner-level coders to
engage and learn,
<span className={styles.emphasizedText}>
{" "}
while HackOlympians caters to more advanced
participants, fostering a competitive and
stimulating atmosphere for seasoned hackers.
</span>
<br></br>
<br></br>
All attendees from both paths will enjoy access
to Hacklllinois&apos;s vibrant array of events,
workshops, company Q&As, and the Company Expo.
Each path will maintain the spirit of
inclusivity and learning to ensure that all
attendees, regardless of their track, experience
the full magic of HackIllinois!
<br></br>
<br></br>
Additionally, all HackIllinois attendees are
eligible to compete in all our sponsored
tracks.*
</p>
</div>
<div></div>
<div>
<i>
*The Best Beginner and General prizes are
reserved for HackIllinois General attendees,
while the Best Olympians prize is reserved for
HackOlympians attendees.
</i>
</div>
</div>
<div>
<h2>
How is HackOlympians different from standard
HackIllinois attendance?
</h2>
<br></br>
<p>
HackIllinois is a historically welcoming space for
coders of all skill levels, particularly those who
are just starting out. This inclusive environment
encourages beginner-level coders to engage and
learn,
<span className={styles.emphasizedText}>
{" "}
while HackOlympians caters to more advanced
participants, fostering a competitive and
stimulating atmosphere for seasoned hackers.
</span>
<br></br>
<br></br>
All attendees from both paths will enjoy access to
Hacklllinois&apos;s vibrant array of events,
workshops, company Q&As, and the Company Expo. Each
path will maintain the spirit of inclusivity and
learning to ensure that all attendees, regardless of
their track, experience the full magic of
HackIllinois!
<br></br>
<br></br>
Additionally, all HackIllinois attendees are
eligible to compete in all our sponsored tracks.*
</p>
</div>
<div></div>
<div>
<i>
*The Best Beginner and General prizes are reserved
for HackIllinois General attendees, while the Best
Olympians prize is reserved for HackOlympians
attendees.
</i>
</div>
</div>
</section>
</div>
</section>
</div>
</>
);
};

Expand Down
Loading

0 comments on commit b15a22a

Please sign in to comment.