Skip to content

GDGHUFS/CodeFestival-Web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

29 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

HUFS CodeFestival

CodeFestival

Welcome to the web frontend repository for the 2024 Hankuk University of Foreign Studies (HUFS) Code Festival. This repository includes the code for the landing page, competition archive, and other festival features.

Features

  • Landing Page for Registration: A dedicated page for participants to sign up for the Code Festival.
  • Competition Details: Detailed event information, such as schedules, categories, and judging criteria.
  • FAQ Page: Answers to common questions to help participants navigate the event smoothly.
  • Gallery: A section showcasing event highlights, previous competitions, and participant achievements, providing a glimpse into the Code Festival experience.

These pages leverage Next.js's Intercepting Routes and Parallel Routes, allowing for greater flexibility in navigation and page rendering. This architecture ensures that users experience seamless transitions and efficient data loading across the platform.

Tech Stack

Category Stack
common TypeScript ESLint Prettier Pnpm
frontend React Next.js Vanilla Extract Three.js
deployment Vercel

Getting Started

Project Setup

  1. Clone the repository:
   git clone https://github.com/GDGHUFS/CodeFestival-Web.git
  1. Install the dependencies:

if you are not installed pnpm, install it first: npm install -g pnpm

   pnpm install
  1. Start the development server:
  pnpm dev

Competition Setup

  1. Create a new markdown file in the content/histories folder, with the filename representing the competition round.
  2. Write the competition details in the newly created markdown file.
  3. Update the competition date displayed on the landing page in src/constants/menu.ts. Additionally, include the registration link and competition page details in the header.

If you are setting up the 7th Code Festival, you can configure it as follows:

export const FESTIVAL = {
  current: {
    title: '7th Code Festival',
    href: '/festival/7',
    date: '2025-10-31T18:00:00+09:00',
    registrationDeadline: '2025-10-20T23:59:59+09:00',
    registrationLink: 'https://forms.gle/[7th-registration-link]',
  },
  6: {
    title: '6th Code Festival',
    href: '/festival/6',
    date: '2024-10-31T18:00:00+09:00',
    registrationDeadline: '2024-10-23T23:59:59+09:00',
    registrationLink: 'https://forms.gle/dGGqMTxni4RL2Moq7',
  },
};

To set up the latest competition, simply modify the current section in the FESTIVAL object. The previous competition, represented by 6, will be archived automatically.

FAQ Page Content

If you need to update the content of the FAQ page, update the src/constants/faq.ts file.

License

This project is distributed under the MIT License. For more information, see the LICENSE file.

Contact

If you have any questions, feel free to reach out via Issues or contact me directly at me@haklee.me.