diff --git a/config/projects.config.ts b/config/projects.config.ts index 9dc868a..ed4d66c 100644 --- a/config/projects.config.ts +++ b/config/projects.config.ts @@ -60,6 +60,41 @@ export const projectImages: CarouselImage[] = [ ]; export const projectsWinners: Projects[] = [ + { + name: 'DevDiary', + desc: 'Dev Diary is a personal markdown-based logging platform built for developers to document bugs, errors, and setup processes across coding projects. It helps you keep track of technical challenges in an organized, personalized way, paired with an AI assistant. With a centralized memory bank and a chatbot that guides you through documentation, error fixes, and helpful tools, creating personal projects feels a little less overwhelming (especially for new developers) while also making the process more reflective and focused on learning.', + image: '/assets/projects/SAGE.jpg', + links: [ + { type: 'github', link: 'https://github.com/acm-projects/DevDiary' }, + // { type: 'video', link: 'TODO' }, + ], + members: ['Tyler Le', 'Jonathan Lewis', 'Phuc Trinh', 'Maryam Al-Naami'], + manager: 'Tammy Khurana', + placement: 'F25 1st Place', + }, + { + name: 'Foundry', + desc: 'Foundry is a visual infrastructure builder that transforms AWS deployment from complex configurations into simple drag-and-drop design. Teams build production-ready applications by visually connecting databases, servers, and storage without any cloud expertise—just drag, connect, and deploy. With real-time collaboration, automatic GitHub CI/CD, and transparent cost tracking, Foundry eliminates the AWS learning curve so developers can focus on building applications, not wrestling with infrastructure.', + image: '/assets/projects/SAGE.jpg', + links: [ + { type: 'github', link: 'https://github.com/acm-projects/Foundry' }, + // { type: 'video', link: 'TODO' }, + ], + members: ['Akilan Sathish', 'Efrain Arevalo', 'Enaya Jawed', 'Luana Marques'], + manager: 'Ethan Varghese', + placement: 'F25 Design Award Winner', + }, + { + name: 'HackLab', + desc: 'HackLab is a platform that empowers developers to bring their software ideas to life through meaningful collaboration. Developers can pitch their own project ideas, join exciting projects proposed by others, and connect with like-minded contributors who share their vision. By fostering organic team formation and providing hands-on opportunities, HackLab enables users to showcase their skills and build impressive portfolios. This community-driven environment accelerates practical software engineering experience, making real-world collaboration both accessible and rewarding.', + image: '/assets/projects/presentationnight-s25-winners.jp', + links: [ + { type: 'github', link: 'https://github.com/acm-projects/HackLab' }, + ], + members: ['Aastha Sheth', 'Luke Sultzer', 'Owen Isenhart', 'Ethan Scherwitz'], + manager: 'Ethan Varghese', + placement: 'S25 1st place', + }, { name: 'SAGE', desc: 'Have you ever asked your advisor a question only to wait weeks for a response? Many times, advisors get flooded with questions that have simple answers or problems that are easy to resolve. SAGE is an advisor chatbot that can answer your questions quickly and efficiently, so you don\'t have to worry about it. On top of this, SAGE can view your profile to help you make decisions about future classes and even generate personalized degree plans. Take the stress out of the logistics and just ask SAGE for help with your inquiries and classes!', @@ -84,16 +119,16 @@ export const projectsWinners: Projects[] = [ ], placement: 'S24 2nd Place', }, - { - name: 'ShareSched', - desc: 'Have you ever wanted to compare schedules with a friend but found it too tedious to compare every little time, professor, and location? ShareSched is an app that allows you to upload a picture of a schedule and extract the key details from it. ShareSched can also find similarities in your schedule and your friend\'s whether it\'s location, professor, class section, or more! ScareSched is the app you need when schedule planning time comes up.', - image: '/assets/divisions/shared/proj_image.png', - members: ['Noel Emmanuel', 'Nadeeba Atiqui', 'Aldrin Roshan', 'Aizan Kalam'], - manager: 'Karina Batra', - links: [ - { type: 'github', link: 'https://github.com/acm-projects/ShareSched' }, - { type: 'video', link: 'https://www.youtube.com/live/Ltv7Q3NVoFE?feature=shared&t=4162' }, - ], - placement: 'F23 1st Place', - }, + // { + // name: 'ShareSched', + // desc: 'Have you ever wanted to compare schedules with a friend but found it too tedious to compare every little time, professor, and location? ShareSched is an app that allows you to upload a picture of a schedule and extract the key details from it. ShareSched can also find similarities in your schedule and your friend\'s whether it\'s location, professor, class section, or more! ScareSched is the app you need when schedule planning time comes up.', + // image: '/assets/divisions/shared/proj_image.png', + // members: ['Noel Emmanuel', 'Nadeeba Atiqui', 'Aldrin Roshan', 'Aizan Kalam'], + // manager: 'Karina Batra', + // links: [ + // { type: 'github', link: 'https://github.com/acm-projects/ShareSched' }, + // { type: 'video', link: 'https://www.youtube.com/live/Ltv7Q3NVoFE?feature=shared&t=4162' }, + // ], + // placement: 'F23 1st Place', + // }, ]; diff --git a/config/research.config.ts b/config/research.config.ts index 2c0cb97..78ab4f5 100644 --- a/config/research.config.ts +++ b/config/research.config.ts @@ -47,6 +47,24 @@ export const researchFAQ: Array = [ export const researchWinners: Projects[] = [ { + name: 'Qryptik', + placement: 'F25 First Place', + desc: 'Description: Qryptik explores a novel frontier in cybersecurity by developing a next-generation post-quantum encryption (PQE) method designed to withstand attacks from quantum computers while remaining efficient enough to run on low-power devices like smartphones. As quantum computing threatens to break traditional encryption standards such as RSA and AES within days, the need for robust, scalable, and efficient cryptographic systems is more urgent than ever. Participants will explore the intersection of quantum resilience, machine learning, neural networks (CNNs), and cryptographic design, working hands-on with secure key generation, lattice-based systems (RLCE), matrix manipulation, and model compression techniques for low-compute environments.', + manager: 'Sai Chauhan', + members: ['Lakshmi Siri Appalaneni', 'Avery Brown', 'Maryam Maalin', 'Sreenivasa Sobhirala'], + image: '/assets/research/research-symposium-s25-poster.jpg', + links: [], + }, + { + name: 'Adveyes', + placement: 'F25 Second Place', + desc: 'Attention Deficit/Hyperactive Disorder (ADHD) is often diagnosed based on observed behavioral outcomes alone. Stemming from a desire for less subjectivity between diagnoses, techniques such as eye-tracking (and saccade-detection/saliency models) have been proven to be able to classify ADHD individuals. However, these techniques often require expensive hardware, which in turn requires the participant to come in person or risk forgoing a diagnosis due to costs. With the CDC declaring an increase of 1 million diagnoses in the past 4 years, resources are at an all time low, while demand is at a high. We propose the application of webcams instead of high end devices to explore the avenue of remote diagnostics and promote accessibility to people without access to such resources.', + manager: 'Anish Reddy Alle', + members: ['Zoë Bryant', 'Ayman Mohammad', 'Gabrielle Le', 'Adam Khazem'], + image: '/assets/research/FingerTip.webp', + links: [], + }, + { name: 'Helix', placement: 'S25 First Place', desc: 'Helix set out to predict the biological impact of missense mutations on protein growth by integrating structural bioinformatics with interpretable machine learning. Using the ThermoMutDB dataset of over 13,000 mutations we engineered a rich feature space to capture physiochemical, evolutionary, and 3D structural characteristics. With this dataset we developed a custom voting ensemble that utilized random forests, gradient boosting and SVM classifiers, which outperformed Siamese Neural Networks by 23% in classifying stabilizing vs destabilizing mutations. Our approach generalized well over a diverse set of protein families and also improved the interpretability of a reliable and faster mutation based discovery model.', @@ -55,6 +73,15 @@ export const researchWinners: Projects[] = [ image: '/assets/research/research-symposium-s25-poster.jpg', links: [], }, + { + name: 'NeuroVision', + placement: 'F24 First Place', + desc: 'This research project aims to transform the analysis of EEG signals, significantly improving the diagnosis and management of epilepsy, a condition affecting 65 million people worldwide. By leveraging state-of-the-art deep learning techniques, including CNNs and transformers, we will develop models that greatly enhance the accuracy and efficiency of detecting abnormal EEG patterns. Our approach involves utilizing extensive datasets and advanced neural architectures, programmed in Python with PyTorch, to push the boundaries of what\'s possible in neurological care. Through this work, we aspire to set new standards in the field, contributing to better patient outcomes and a deeper understanding of neurological disorders.', + manager: 'Sahas Sharma', + members: ['Purva Patel', 'Priti See', 'Aditya Reddy Yanamala', 'Shayaan Zari', 'Rebecca Bender Jutzi'], + image: '/assets/research/research-symposium-s25-poster.jpg', + links: [], + }, { name: 'Fingertip Fluency', placement: 'S24 First Place', diff --git a/src/components/Divisions/Shared/WinningProjects.tsx b/src/components/Divisions/Shared/WinningProjects.tsx index 007f23d..78ded9c 100644 --- a/src/components/Divisions/Shared/WinningProjects.tsx +++ b/src/components/Divisions/Shared/WinningProjects.tsx @@ -1,14 +1,23 @@ +'use client'; + +import { useState } from 'react'; import { IconMap } from '@/components/Events/WorkshopIcons'; import Image from 'next/image'; import Link from 'next/link'; import { getWinningProjects } from '../../../../config/divisions.config'; +const INITIAL_DISPLAY_COUNT = 2; + export default function WinningProjects({ division }: { division: 'projects' | 'research' | 'hackutd' }) { const projects = getWinningProjects(division); + const [isExpanded, setIsExpanded] = useState(false); + + const visibleProjects = isExpanded ? projects : projects.slice(0, INITIAL_DISPLAY_COUNT); + const hasMoreProjects = projects.length > INITIAL_DISPLAY_COUNT; return (
- {projects.map((project, i) => { + {visibleProjects.map((project, i) => { const badgeStyle = getPlacementBadge(project.placement); return ( @@ -92,6 +101,17 @@ export default function WinningProjects({ division }: { division: 'projects' | '
); })} + + {hasMoreProjects && ( +
+ +
+ )} ); }