diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 5fecdcf..5eaa8c8 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -53,7 +53,7 @@ const menuItems = [ }, { title: ".devHacks", - path: "/devhacks/2026", + path: "/devhacks", icon: , }, diff --git a/src/resources/data/devHacksArchive/HackathonYearPictures.tsx b/src/resources/data/devHacksArchive/HackathonYearPictures.tsx index 8983d93..9d27347 100644 --- a/src/resources/data/devHacksArchive/HackathonYearPictures.tsx +++ b/src/resources/data/devHacksArchive/HackathonYearPictures.tsx @@ -3,6 +3,27 @@ import { Modal, Box } from "@mui/material"; import HorizontalScroller from "@/components/HorizontalScroller"; import "@/styles/pictures.scss"; +//2026 images +import P2026_1 from "@/resources/images/devhacks/2026/pictures/2026_1.png"; +import P2026_2 from "@/resources/images/devhacks/2026/pictures/2026_2.png"; +import P2026_3 from "@/resources/images/devhacks/2026/pictures/2026_3.png"; +import P2026_4 from "@/resources/images/devhacks/2026/pictures/2026_4.png"; +import P2026_5 from "@/resources/images/devhacks/2026/pictures/2026_5.png"; +import P2026_6 from "@/resources/images/devhacks/2026/pictures/2026_6.png"; +import P2026_8 from "@/resources/images/devhacks/2026/pictures/2026_8.png"; +import P2026_9 from "@/resources/images/devhacks/2026/pictures/2026_9.png"; +import P2026_10 from "@/resources/images/devhacks/2026/pictures/2026_10.png"; +import P2026_11 from "@/resources/images/devhacks/2026/pictures/2026_11.png"; +import P2026_12 from "@/resources/images/devhacks/2026/pictures/2026_12.png"; +import P2026_13 from "@/resources/images/devhacks/2026/pictures/2026_13.png"; +import P2026_14 from "@/resources/images/devhacks/2026/pictures/2026_14.png"; +import P2026_15 from "@/resources/images/devhacks/2026/pictures/2026_15.png"; +import P2026_16 from "@/resources/images/devhacks/2026/pictures/2026_16.png"; +import P2026_17 from "@/resources/images/devhacks/2026/pictures/2026_17.png"; +import P2026_18 from "@/resources/images/devhacks/2026/pictures/2026_18.png"; +import P2026_19 from "@/resources/images/devhacks/2026/pictures/2026_19.png"; +import P2026_20 from "@/resources/images/devhacks/2026/pictures/2026_20.png"; + // 2024 images import P2024_1 from "@/resources/images/devhacks/2024/pictures/2024_1.png"; import P2024_2 from "@/resources/images/devhacks/2024/pictures/2024_2.png"; @@ -97,6 +118,30 @@ const HackathonYearPictures: React.FC = ({ { src: P2025_15, alt: "devHacks 2025 photo 15" }, { src: P2025_16, alt: "devHacks 2025 photo 16" }, ], + "2026": [ + { src: P2026_1, alt: "devHacks 2026 photo 1" }, + { src: P2026_2, alt: "devHacks 2026 photo 2" }, + { src: P2026_3, alt: "devHacks 2026 photo 3" }, + { src: P2026_5, alt: "devHacks 2026 photo 5" }, + { src: P2026_12, alt: "devHacks 2026 photo 12" }, + { src: P2026_4, alt: "devHacks 2026 photo 4" }, + { src: P2026_6, alt: "devHacks 2026 photo 6" }, + { src: P2026_10, alt: "devHacks 2026 photo 10" }, + { src: P2026_15, alt: "devHacks 2026 photo 15" }, + { src: P2026_9, alt: "devHacks 2026 photo 9" }, + { src: P2026_11, alt: "devHacks 2026 photo 11" }, + + { src: P2026_8, alt: "devHacks 2026 photo 8" }, + + { src: P2026_13, alt: "devHacks 2026 photo 13" }, + { src: P2026_14, alt: "devHacks 2026 photo 14" }, + + { src: P2026_16, alt: "devHacks 2026 photo 16" }, + { src: P2026_17, alt: "devHacks 2026 photo 17" }, + { src: P2026_18, alt: "devHacks 2026 photo 18" }, + { src: P2026_19, alt: "devHacks 2026 photo 19" }, + { src: P2026_20, alt: "devHacks 2026 photo 20" }, + ], }; const [open, setOpen] = useState(false); diff --git a/src/resources/data/devHacksArchive/PicturesGeneral.tsx b/src/resources/data/devHacksArchive/PicturesGeneral.tsx index 6dbf4c2..81e136e 100644 --- a/src/resources/data/devHacksArchive/PicturesGeneral.tsx +++ b/src/resources/data/devHacksArchive/PicturesGeneral.tsx @@ -16,7 +16,14 @@ import P10 from "@/resources/images/devhacks/general/2024_11.png"; import P11 from "@/resources/images/devhacks/general/2024_12.png"; import P12 from "@/resources/images/devhacks/general/2025_3.png"; +import P13 from "@/resources/images/devhacks/2026/pictures/2026_1.png"; +import P14 from "@/resources/images/devhacks/2026/pictures/2026_2.png"; +import P15 from "@/resources/images/devhacks/2026/pictures/2026_3.png"; + export const picturesGeneralImages = [ + { src: P13, alt: "devHacks photo 13" }, + { src: P14, alt: "devHacks photo 14" }, + { src: P15, alt: "devHacks photo 15" }, { src: P1, alt: "devHacks photo 1" }, { src: P2, alt: "devHacks photo 2" }, { src: P3, alt: "devHacks photo 3" }, diff --git a/src/resources/data/devHacksArchive/devHacks2026/Gallery.tsx b/src/resources/data/devHacksArchive/devHacks2026/Gallery.tsx new file mode 100644 index 0000000..8751471 --- /dev/null +++ b/src/resources/data/devHacksArchive/devHacks2026/Gallery.tsx @@ -0,0 +1,13 @@ +import { useEffect } from "react"; + +const Gallery = () => { + useEffect(() => { + window.location.replace( + "https://devhacks-2026.devpost.com/project-gallery" + ); + }, []); + + return null; +}; + +export default Gallery; diff --git a/src/resources/data/devHacksArchive/devHacks2026/Register.tsx b/src/resources/data/devHacksArchive/devHacks2026/Register.tsx deleted file mode 100644 index 2e9e20f..0000000 --- a/src/resources/data/devHacksArchive/devHacks2026/Register.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import { useEffect } from "react"; - -const Register = () => { - useEffect(() => { - window.location.replace("https://forms.gle/aVBPtnpdRvNg7sLT7"); - }, []); - - return null; -}; - -export default Register; diff --git a/src/resources/data/devHacksArchive/devHacks2026/devpost.tsx b/src/resources/data/devHacksArchive/devHacks2026/devpost.tsx deleted file mode 100644 index ee151c7..0000000 --- a/src/resources/data/devHacksArchive/devHacks2026/devpost.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import { useEffect } from "react"; - -const Devpost = () => { - useEffect(() => { - window.location.replace("https://devhacks-2026.devpost.com"); - }, []); - - return null; -}; - -export default Devpost; diff --git a/src/resources/data/events.ts b/src/resources/data/events.ts index 0357ff6..0606642 100644 --- a/src/resources/data/events.ts +++ b/src/resources/data/events.ts @@ -91,13 +91,6 @@ export const EVENTS: EventData[] = [ image: devhacks, path: "/devhacks/2026", recurring: true, - upcomingTitle: ".devHacks 2026", - upcomingDescription: - ".devClub's annual hackathon returns for its 11th iteration on Feb 20-21", - upcomingImage: devhacks2026, - date: "2026-02-20T13:00:00", - location: "EITC ATRIUM", - rsvp: "https://devclub.ca/devhacks/2026/register", }, { id: "labtours", diff --git a/src/resources/data/hackathonInfoConfig.ts b/src/resources/data/hackathonInfoConfig.ts index 3cffb86..8455695 100644 --- a/src/resources/data/hackathonInfoConfig.ts +++ b/src/resources/data/hackathonInfoConfig.ts @@ -8,15 +8,11 @@ const hackathonInfoConfig: HackathonInfo = { location: "EITC Atrium, E3 270 @ University of Manitoba", date: "February 20nd to 21st (1:00 PM - 1:00 PM)", description: - ".devHacks is an annual hackathon hosted by .devClub for students to showcase their creativity and endurance over a period of 24 hours of fun filled development!", + ".devHacks 2026 marked .devClub's largest hackathon to date, bringing together 417 hackers, 11 incredible sponsors, and 72 innovative projects over one unforgettable weekend of building, learning, and collaboration. ", links: [ { - text: "Register", - path: "/devhacks/2026/register", - }, - { - text: "devpost page", - path: "/devhacks/2026/devpost", + text: "Project Gallery", + path: "/devhacks/2026/gallery", }, { text: "Schedule", @@ -26,10 +22,6 @@ const hackathonInfoConfig: HackathonInfo = { text: "Prize Categories", path: "/devhacks/2026/themes", }, - { - text: "Github tutorial", - path: "/github-tutorial", - }, ], }, "2025": { @@ -68,10 +60,6 @@ const hackathonInfoConfig: HackathonInfo = { description: ".devHacks 2024 was our second in-person Hackathon since the pandemic, bringing together over 300 hackers who tirelessly innovated over an intense 24-hour period.", links: [ - { - text: "Github tutorial", - path: "/github-tutorial", - }, { text: "Schedule", path: "/devhacks/2024/schedule", @@ -90,12 +78,7 @@ const hackathonInfoConfig: HackathonInfo = { date: "February 25th (8:00 AM - 8:00 PM)", description: "After years away from in-person events, .devHacks 2023 brought together more than 200 passionate students, who turned ideas into extraordinary projects in just 12 hours.", - links: [ - { - text: "Github tutorial", - path: "/github-tutorial", - }, - ], + links: [], }, }; diff --git a/src/resources/data/hackathonThemeConfig.ts b/src/resources/data/hackathonThemeConfig.ts index 5cb835a..19c8110 100644 --- a/src/resources/data/hackathonThemeConfig.ts +++ b/src/resources/data/hackathonThemeConfig.ts @@ -3,6 +3,11 @@ import { HackathonTheme } from "./types"; const hackathonThemeConfig: HackathonTheme = { "2026": [ + { + title: "Master of .devHacks", + description: + "This award celebrates the most outstanding project of the hackathon, with the highest overall score.", + }, { title: "Rookie of the Year Hack", description: @@ -77,6 +82,62 @@ Build a system that: }, ], + "2025": [ + { + title: "Legend of the Hacks", + description: "Score the highest points and claim Victory Royale!", + }, + { + title: "Best Accessibility Hack", + description: + "This hack recognizes projects that enhance digital inclusion, making tech easier to use for people with disabilities through innovative, thoughtful, and user-friendly solutions.", + }, + { + title: "Best Impact Hack", + description: + "This challenge invites you to develop a hack that provides a solution that benefits society or promotes sustainable development. From diversity to accessibility to industry, there are no limits to the problems you can address and the impacts you can make.", + }, + { + title: "Best First-Time Hack", + description: + "This best first time hacker challenge is made to welcome new hackers (and those who work with beginners)! You are eligible for this category if at least half of your team is made of first-time hackers.", + }, + { + title: "Best Chaotic Evil Hack", + description: + "This hack is the villain of all hacks—unpredictable and maybe helpful? It could either set the world on fire or secretly save it, but either way, make your project do something we didn't know we needed!", + }, + { + title: "Best AI Hack", + description: + "Who needs robots taking over the world? Make AI do something actually useful (or ridiculously cool). Automate, innovate, or break expectations with cutting-edge technology!", + }, + { + title: "GlitchSecure Hack Challenge", + description: + "Create a security-focused project or tool that aids in digital security, computer system integrity or user privacy.", + details: [ + { + header: "Examples of Projects", + content: [ + "Security scanners which identify system vulnerabilities.", + "Browser extensions which enhance user privacy.", + "Security management software for devices such as computer systems or CCTV cameras.", + "Cyber security training/awareness software.", + ], + }, + ], + }, + { + title: "Ubisoft Hack Challenge", + description: [ + 'Hackers are invited to incorporate "Race Against the Clock" as an element in your game. It can be in a small way or a big way, but make it make sense in the context of your game. Use any engine, framework, or library to bring your vision to life.', + "Our Ubisoft Ambassadors will be judging entries based on creativity, gameplay, and adherence to the theme. Compete for a chance to win some cool prizes, including exclusive Ubisoft swag and PC game codes.", + "Unleash your creativity and show us what you can build!", + ], + }, + ], + "2024": [ { title: "Best Societal Impact Hack", diff --git a/src/resources/data/hackathonWinners.ts b/src/resources/data/hackathonWinners.ts new file mode 100644 index 0000000..b620fb5 --- /dev/null +++ b/src/resources/data/hackathonWinners.ts @@ -0,0 +1,197 @@ +export type HackathonWinner = { + prizeIndex: number; + projectName: string; + teamMembers: string[]; + projectUrl?: string; +}; + +const hackathonWinners: Record = { + "2026": [ + { + prizeIndex: 5, + projectName: "VaccineWatch", + teamMembers: [ + "Logan Furedi", + "Peter Vu", + "Juan Rempel", + "Jagrit Sharma", + "Duy Kha Tran", + ], + projectUrl: "https://devpost.com/software/vaccinewatch", + }, + { + prizeIndex: 0, + projectName: "Lychee", + teamMembers: ["Jack Heppner", "Tiffany Iao"], + projectUrl: "https://devpost.com/software/lychee-nacvme", + }, + { + prizeIndex: 1, + projectName: "Lychee", + teamMembers: ["Jack Heppner", "Tiffany Iao"], + projectUrl: "https://devpost.com/software/lychee-nacvme", + }, + { + prizeIndex: 2, + projectName: "StudyNav", + teamMembers: [ + "Logan Decock", + "Connor Langan", + "Garrett Malenko", + "Ben Purvis", + ], + projectUrl: "https://devpost.com/software/studynav", + }, + { + prizeIndex: 3, + projectName: "Lobster Boxing", + teamMembers: ["Fraser Newbury", "Grayson Andrews"], + projectUrl: "https://devpost.com/software/lobster-boxing", + }, + { + prizeIndex: 4, + projectName: "Finders Keepers", + teamMembers: [ + "Ekamjot Singh", + "Shay Sapozhnikov", + "Benjamin Judson", + "Jaskarandeep Singh Jashan", + ], + projectUrl: "https://devpost.com/software/finders-keeperss", + }, + ], + + "2025": [ + { + prizeIndex: 7, + projectName: "GTFO", + teamMembers: [ + "Peter Vu", + "James Park", + "Luke Wiebe", + "Paul Xiang", + "James Ha", + ], + projectUrl: "https://devpost.com/software/gtfo-2s50hi", + }, + { + prizeIndex: 6, + projectName: "Escape Protocol: Rogue AI", + teamMembers: [ + "Matthew Indico", + "Shana Iqbal", + "Luisa Velandia", + "Lisa Zhu", + "Juanito Catalon", + ], + projectUrl: "https://devpost.com/software/escape-protocol-rogue-ai", + }, + { + prizeIndex: 0, + projectName: "StockTrack", + teamMembers: [ + "Oleksandr Bratasyuk", + "Oleksandr Dimbrovskyi", + "Nick Chudak", + "Yaroslav Dimbrovskyi", + "Toni Odujinrin", + ], + projectUrl: "https://devpost.com/software/stocktrack", + }, + { + prizeIndex: 1, + projectName: "Talkable", + teamMembers: ["Hadia Inam", "Maria Inam"], + projectUrl: "https://devpost.com/software/talkable", + }, + { + prizeIndex: 2, + projectName: "StockTrack", + teamMembers: [ + "Oleksandr Bratasyuk", + "Oleksandr Dimbrovskyi", + "Nick Chudak", + "Yaroslav Dimbrovskyi", + "Toni Odujinrin", + ], + projectUrl: "https://devpost.com/software/stocktrack", + }, + { + prizeIndex: 3, + projectName: "CommitCV", + teamMembers: ["Travis Friesen", "Connor Langan"], + projectUrl: "https://devpost.com/software/commitcv", + }, + + { + prizeIndex: 4, + projectName: "GrassTouchers", + teamMembers: [ + "Keira Pasveer", + "Atishaya Maharjan", + "Aidan McLeod", + "Juan Rempel", + "Timmy Wang", + ], + projectUrl: "https://devpost.com/software/grasstouchers", + }, + ], + "2024": [ + { + prizeIndex: 5, + projectName: "Halal Guys", + teamMembers: ["Ali Nawaz", "Hassan Nauman", "Rayan Imran"], + }, + { + prizeIndex: 0, + projectName: "Agile Ace", + teamMembers: [ + "Kameron Ronald", + "Jashanjot Gill", + "Luxiang Lin", + "Nhat Nam Tran", + "Xiang Shi", + ], + }, + { + prizeIndex: 1, + projectName: "The not-so-friendly pumpkin", + teamMembers: ["Brennan Fehr", "Quinn Gibbons", "Josh Chen", "Jayla Chen"], + }, + { + prizeIndex: 2, + projectName: "Lost and Found", + teamMembers: [ + "Hamed Marwan", + "Phan Ly Nhan Nguyen", + "Mohamed Youssef", + "Omar Taha", + "Yirong Wang", + ], + }, + { + prizeIndex: 3, + projectName: "F1 Tracker", + teamMembers: [ + "Jan Tan", + "OWen Zonneveld", + "Nikolaas Christie", + "Henry Wong", + "Aden Knelsen-Dobson", + ], + }, + { + prizeIndex: 4, + projectName: "Starfish Cake", + teamMembers: [ + "Hannara Chang", + "Jasmine Shapan", + "Halah Mhanni", + "Dalia Bashaev", + "Gwyneth Ho", + ], + }, + ], +}; + +export default hackathonWinners; diff --git a/src/resources/images/devhacks/2026/pictures/2026_1.png b/src/resources/images/devhacks/2026/pictures/2026_1.png new file mode 100644 index 0000000..0c84cbb Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_1.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_10.png b/src/resources/images/devhacks/2026/pictures/2026_10.png new file mode 100644 index 0000000..e9e6fd6 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_10.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_11.png b/src/resources/images/devhacks/2026/pictures/2026_11.png new file mode 100644 index 0000000..fa6f542 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_11.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_12.png b/src/resources/images/devhacks/2026/pictures/2026_12.png new file mode 100644 index 0000000..82fbe51 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_12.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_13.png b/src/resources/images/devhacks/2026/pictures/2026_13.png new file mode 100644 index 0000000..6dabe9b Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_13.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_14.png b/src/resources/images/devhacks/2026/pictures/2026_14.png new file mode 100644 index 0000000..dc73141 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_14.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_15.png b/src/resources/images/devhacks/2026/pictures/2026_15.png new file mode 100644 index 0000000..c73d98f Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_15.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_16.png b/src/resources/images/devhacks/2026/pictures/2026_16.png new file mode 100644 index 0000000..7dc9f95 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_16.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_17.png b/src/resources/images/devhacks/2026/pictures/2026_17.png new file mode 100644 index 0000000..d7c705e Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_17.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_18.png b/src/resources/images/devhacks/2026/pictures/2026_18.png new file mode 100644 index 0000000..625d45e Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_18.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_19.png b/src/resources/images/devhacks/2026/pictures/2026_19.png new file mode 100644 index 0000000..29e59d5 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_19.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_2.png b/src/resources/images/devhacks/2026/pictures/2026_2.png new file mode 100644 index 0000000..3ba89b3 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_2.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_20.png b/src/resources/images/devhacks/2026/pictures/2026_20.png new file mode 100644 index 0000000..65902a6 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_20.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_3.png b/src/resources/images/devhacks/2026/pictures/2026_3.png new file mode 100644 index 0000000..763744b Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_3.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_4.png b/src/resources/images/devhacks/2026/pictures/2026_4.png new file mode 100644 index 0000000..94bbd1e Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_4.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_5.png b/src/resources/images/devhacks/2026/pictures/2026_5.png new file mode 100644 index 0000000..b0e0e9b Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_5.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_6.png b/src/resources/images/devhacks/2026/pictures/2026_6.png new file mode 100644 index 0000000..f0ceb95 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_6.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_8.png b/src/resources/images/devhacks/2026/pictures/2026_8.png new file mode 100644 index 0000000..c328849 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_8.png differ diff --git a/src/resources/images/devhacks/2026/pictures/2026_9.png b/src/resources/images/devhacks/2026/pictures/2026_9.png new file mode 100644 index 0000000..4bca6f6 Binary files /dev/null and b/src/resources/images/devhacks/2026/pictures/2026_9.png differ diff --git a/src/resources/images/devhacks/2026/schedule_bg_2026.png b/src/resources/images/devhacks/2026/schedule_bg_2026.png index 2d7450a..d7a27d4 100644 Binary files a/src/resources/images/devhacks/2026/schedule_bg_2026.png and b/src/resources/images/devhacks/2026/schedule_bg_2026.png differ diff --git a/src/routes/App.tsx b/src/routes/App.tsx index adb0395..a6895f6 100644 --- a/src/routes/App.tsx +++ b/src/routes/App.tsx @@ -8,7 +8,6 @@ import { import ErrorBoundary from "@/components/ErrorBoundary"; -import DevHacks2025ProjectGallery from "@/resources/data/devHacksArchive/devHacks2025/ProjectGallery2025"; import redirectMappings from "@/resources/redirect-mappings"; import Contact from "./Contact"; @@ -22,8 +21,9 @@ import { } from "./hackathon/hackathonLoader"; import HackathonSchedule from "./hackathon/HackathonSchedule"; import HackathonThemes from "./hackathon/HackathonThemes"; -import Register from "@/resources/data/devHacksArchive/devHacks2026/Register"; -import Devpost from "@/resources/data/devHacksArchive/devHacks2026/devpost"; + +import DevHacks2025ProjectGallery from "@/resources/data/devHacksArchive/devHacks2025/ProjectGallery2025"; +import Devhacks2026ProjectGallery from "@/resources/data/devHacksArchive/devHacks2026/Gallery"; import Home from "./Home"; import LinkTree from "./LinkTree"; import RootLayout from "./layouts/RootLayout"; @@ -70,8 +70,10 @@ const router = createBrowserRouter( path="/devhacks/2025/gallery" element={} /> - } /> - } /> + } + /> {/* always keep this route last, otherwise it will mess with the actual links above */} } /> diff --git a/src/routes/hackathon/HackathonArchive.tsx b/src/routes/hackathon/HackathonArchive.tsx index 0720c1d..9890ed9 100644 --- a/src/routes/hackathon/HackathonArchive.tsx +++ b/src/routes/hackathon/HackathonArchive.tsx @@ -2,16 +2,12 @@ import React from "react"; import { useLoaderData, useNavigate } from "react-router-dom"; import { Button } from "@mui/material"; -import HackathonFaq from "@/components/HackathonFaq"; +import HackathonWinners from "@/routes/hackathon/hackathonWinners"; -import codeOfConduct from "@/resources/data/code-of-conduct"; -import Timer from "@/components/Timer"; import HackathonYearPictures from "@/resources/data/devHacksArchive/HackathonYearPictures"; import HackathonYearSponsors from "@/resources/data/devHacksArchive/HackathonYearSponsors"; -import rules from "@/resources/data/rules"; + import { HackathonInfo } from "@/resources/data/types"; -import HorizontalScroller from "@/components/HorizontalScroller"; -import { HackathonArchiveCards } from "@/routes/hackathon/HackathonArchiveCards"; function HackathonArchive() { const { data } = useLoaderData() as HackathonInfo; @@ -20,13 +16,6 @@ function HackathonArchive() { return (
- {data.year === "2026" && ( -
-

- -

-
- )}

<{data.title}>

{data.subtitle}

@@ -55,102 +44,29 @@ function HackathonArchive() {

-

Sponsors

- - - {/*

Event Pictures

- */} - - {data.year !== "2026" && ( - <> -

Event Pictures

- - + {data.year === "2026" && ( +
+

Recap Video

+
+