Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion sites/mainweb/app/bootcamp/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -210,4 +210,4 @@ const BootcampPage: React.FC = () => {
);
};

export default BootcampPage;
export default BootcampPage;
125 changes: 74 additions & 51 deletions sites/mainweb/app/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ const Home = () => {
<Mini className="text-gray-300 leading-relaxed">
As the <strong>largest student-run data science organization at Georgia Tech</strong>,
we provide technical skill development via club projects, workshops,
guest speakers, and more. DSGT is open to all majors and focuses on <strong>projects, bootcamps, and Golden Byte</strong>.
guest speakers, and more. DSGT is open to all majors and focuses on <strong>projects, bootcamps, and Hacklytics</strong>.
</Mini>
<Mini>
<LearnMore to="/team">Meet the Team</LearnMore>
Expand Down Expand Up @@ -237,8 +237,13 @@ const Home = () => {

{/* Title below image */}
<h3 className="text-teal-400 text-lg font-bold text-center mb-2">
DS@GT Applied Research Competitions (ARC)
Applied Research Competitions (ARC)
</h3>
<div className="flex justify-center mb-3">
<span className="px-3 py-1 text-xs font-semibold rounded-full bg-emerald-500/15 text-emerald-400 border border-emerald-500/30">
Actively Recruiting
</span>
</div>

{/* Description */}
<p className="text-gray-300 text-sm leading-relaxed mb-4">
Expand All @@ -247,7 +252,7 @@ const Home = () => {

{/* Link */}
<a
href="https://github.com/datasciencegt/arc"
href="https://dsgt-arc.org/"
target="_blank"
rel="noopener noreferrer"
aria-label="Visit the DS@GT ARC GitHub page"
Expand All @@ -259,49 +264,75 @@ const Home = () => {

{/* Other project cards */}
<Card
linkUrl="https://datasciencegt-dlp.com/"
className="flex flex-col justify-between h-full hover:shadow-2xl hover:-translate-y-1 transition-all duration-300 border border-white/5 p-6 rounded-xl"
>
{/* Logo on top */}
<div className="w-full flex justify-center mb-4">
<div className="p-4 bg-white rounded-xl">
<Image
src={stock}
alt="Roboinvesting Logo"
className="object-contain w-32 h-32"
width={128}
height={128}
/>
</div>
</div>

{/* Title */}
<h3 className="text-teal-400 text-lg font-bold text-center mb-3">Roboinvesting</h3>
<div className="flex justify-center mb-3">
<span className="px-3 py-1 text-xs font-semibold rounded-full bg-emerald-500/15 text-emerald-400 border border-emerald-500/30">
Actively Recruiting
</span>
</div>

{/* Description */}
<p className="text-gray-300 text-sm leading-relaxed">
A <strong>machine learning–driven trading simulation</strong> that analyzes
<strong> technical indicators</strong>, <strong>macroeconomic signals</strong>,
and <strong>risk metrics</strong> to generate
<strong> data-informed trading decisions</strong>. Built for
<strong> education</strong> and <strong>real-world financial modeling experience</strong>.
</p>

{/* Email contact link */}
<a
href="mailto:bjmichaels.25@gmail.com"
aria-label="Contact project via email"
className="text-teal-400 mt-4 inline-block font-semibold hover:underline hover:text-teal-300 transition-colors"
>
Get in Contact Now →
</a>
</Card>

<Card
img={gtaa}
heading="Sports Analytics Project"
className="flex flex-col justify-between h-full hover:shadow-2xl hover:-translate-y-1 transition-all duration-300 border border-white/5 p-6 rounded-xl"
>
{/* Logo on top (manual) */}
<div className="w-full flex justify-center mb-4">
<div className="p-4 bg-white rounded-xl">
<Image
src={stock}
alt="Roboinvesting Logo"
className="object-contain w-32 h-32"
width={128}
height={128}
/>
</div>
<div className="flex justify-center mb-3">
<span className="px-3 py-1 text-xs font-semibold rounded-full bg-red-500/15 text-red-400 border border-red-500/30">
Closed
</span>
</div>

{/* Title below image */}
<h3 className="text-teal-400 text-lg font-bold text-center mb-3">Roboinvesting</h3>

<p className="text-gray-300 text-sm leading-relaxed">
A <strong>machine learning–driven trading simulation</strong> that analyzes
<strong> technical indicators</strong>, <strong>macroeconomic signals</strong>,
and <strong>risk metrics</strong> to generate
<strong> data-informed trading decisions</strong>. Built for
<strong> education</strong> and <strong>real-world financial modeling experience</strong>.
<p className="text-gray-300 text-sm leading-relaxed line-clamp-4">
The <strong>sports analysis</strong> project is a space for students to explore
sports-related data. Past projects include NFL projections, NBA roster
optimization, and odds analysis using advanced statistics.
</p>

<a
href="https://datasciencegt-dlp.com/"
target="_blank"
rel="noopener noreferrer"
aria-label="Visit the Deep Learning Playground website"
className="text-teal-400 mt-auto inline-block font-semibold hover:underline hover:text-teal-300 transition-colors"
>
Visit Project Site →
</a>
</Card>

<Card
img={blueconduit}
heading="AI-Driven Investment Platform"
className="flex flex-col justify-between h-full hover:shadow-2xl hover:-translate-y-1 transition-all duration-300 border border-white/5 p-6 rounded-xl"
>
<div className="flex justify-center mb-4">
<span className="px-3 py-1 text-xs font-semibold rounded-full bg-red-500/15 text-red-400 border border-red-500/30">
Past Project
</span>
</div>
<p className="text-gray-300 text-sm leading-relaxed line-clamp-4">
This innovative project reimagines financial planning as a <strong>conversational experience</strong>. The AI engages users to create personalized financial
roadmaps using their data and predictive models.
Expand All @@ -314,6 +345,11 @@ const Home = () => {
linkUrl="https://nucleusfox.github.io/furnichanter.html"
className="flex flex-col justify-between h-full hover:shadow-2xl hover:-translate-y-1 transition-all duration-300 border border-white/5 p-6 rounded-xl"
>
<div className="flex justify-center mb-4">
<span className="px-3 py-1 text-xs font-semibold rounded-full bg-red-500/15 text-red-400 border border-red-500/30">
Past Project
</span>
</div>
<p className="text-gray-300 text-sm leading-relaxed line-clamp-4 mb-4">
Furnichanter combines <strong>computer vision and AI</strong> to allow users to search
for furniture using images and generate custom pieces from text
Expand All @@ -330,17 +366,6 @@ const Home = () => {
</a>
</Card>

<Card
img={gtaa}
heading="Sports Analytics Project"
className="flex flex-col justify-between h-full hover:shadow-2xl hover:-translate-y-1 transition-all duration-300 border border-white/5 p-6 rounded-xl"
>
<p className="text-gray-300 text-sm leading-relaxed line-clamp-4">
The <strong>sports analysis</strong> project is a space for students to explore
sports-related data. Past projects include NFL projections, NBA roster
optimization, and odds analysis using advanced statistics.
</p>
</Card>

<Card
img=""
Expand Down Expand Up @@ -379,8 +404,7 @@ const Home = () => {
img={slide1}
heading="Become a Member"
button_text="Sign Up Now"
button_to="https://member.datasciencegt.org"
target="_blank"
button_to="/tbd"
rel="noopener noreferrer"
className="hover:shadow-blue-500/30"
>
Expand All @@ -393,8 +417,7 @@ const Home = () => {
img={slide7}
heading="Apply for Leadership"
button_text="View Open Roles"
button_to="https://member.datasciencegt.org/portal/forms"
target="_blank"
button_to="/tbd"
rel="noopener noreferrer"
className="hover:shadow-cyan-500/30"
>
Expand All @@ -405,7 +428,7 @@ const Home = () => {
<div className="w-full max-w-[400px]">
<EventCard
img={slide6}
heading="Golden Byte 2026 Datathon"
heading="Hacklytics 2026"
when="Feb 20-22, 2026"
button_text="More Details"
button_to="#golden-byte"
Expand Down
106 changes: 101 additions & 5 deletions sites/mainweb/app/projects/page.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,103 @@
export default function ProjectsPage() {
"use client";

import { useState, useEffect } from "react";
import Background from "@/components/Background";
import Navbar from "@/components/Navbar";
import Footer from "@/components/Footer";
import Major from "@/components/Text/Major";
import Mini from "@/components/Text/Mini";

const projects = [
{
name: "Roboinvesting",
description:
"Using Machine Learning to simulate profitable trading decisions. The goal of this project is to build a machine learning pipeline to analyze technical indicators, macroeconomic data, and calculate risk, to generate trading signals for our AI system to order. This is for educational purposes only and for the experience.",
},
{
name: "ARC: Applied Research and Competitions seminar",
description:
"This seminar prepares students for original research contributions at evaluation-focused venues like CLEF. Participants analyze the AI/ML/IR applied research landscape, identify viable tasks, and develop ML/IR pipelines using PyTorch and Hugging Face.",
},
{
name: "Sports Analysis Project",
description:
"A space for students to work on open-ended sports-related research projects. Members learn data analysis, visualization, statistical modelling, and machine learning by taking a project through the entire data science life cycle.",
},
{
name: "Real-Time AI Trading Agent",
description:
"An end-to-end systems and machine learning project focused on building an autonomous trading pipeline. Team members work across data ingestion, feature engineering, time-series forecasting, and simulated trade execution.",
},
{
name: "Deep Learning Playground",
description:
"An innovative learning venture focused on making the process of training machine learning and deep learning models understandable and accessible via a user-friendly web application.",
},
{
name: "AI-Driven Investment Platform",
description:
"Using AI to conversationally help investors reach investing goals. The tool adapts and changes strategies based on information provided by the client.",
},
{
name: "Furnichanter",
description:
"A project combining technology with interior design. Users can search for furniture through images, generate custom pieces from text, visualize furniture in their spaces, and explore 3D modeling.",
},
{
name: "Kaggle CLEF",
description:
"A seminar-styled introduction to data science competitions, including Kaggle and CLEF 2025. Members read, present, discuss research, write exploratory data analyses, and compete internally.",
},
];

const ProjectsPage: React.FC = () => {
const [windowWidth, setWindowWidth] = useState<number>(
typeof window !== "undefined" ? window.innerWidth : 1024
);

useEffect(() => {
const handleResize = () => setWindowWidth(window.innerWidth);
window.addEventListener("resize", handleResize);
return () => window.removeEventListener("resize", handleResize);
}, []);

return (
<main className="min-h-screen flex items-center justify-center p-8">
<h1 className="text-3xl font-bold">Projects</h1>
</main>
<div className="relative min-h-screen flex flex-col bg-gray-950 text-gray-300">
<Background className="absolute inset-0 z-0 opacity-40" />
<Navbar
screen_width={windowWidth}
className="fixed top-0 left-0 w-full z-30 bg-gray-950/90 backdrop-blur-sm shadow-lg shadow-indigo-900/10"
page="other"
/>

<main className="relative z-10 pt-[120px] pb-32 px-4 sm:px-8 md:px-16 space-y-16">
<section className="text-center">
<Major type="b" className="text-white text-5xl sm:text-6xl font-extrabold">
DSGT Projects
</Major>
<Mini className="text-gray-300 max-w-2xl mx-auto pt-2 text-lg">
Explore the variety of projects led by DSGT members, spanning machine learning, AI, data analysis, and hands-on real-world applications.
</Mini>
</section>

<section className="max-w-6xl mx-auto grid grid-cols-1 md:grid-cols-2 gap-8">
{projects.map((project, i) => (
<div
key={i}
className="bg-gray-800/70 p-6 rounded-3xl shadow-xl border border-gray-700 hover:bg-gray-700/80 transition-all duration-300 hover:-translate-y-1"
>
<Major as="h3" compact className="text-white text-2xl mb-3">
{project.name}
</Major>
<Mini className="text-gray-300 leading-relaxed">{project.description}</Mini>
</div>
))}
</section>
</main>

<Footer screen_width={windowWidth} className="relative z-10" />
</div>
);
}
};

export default ProjectsPage;
Loading
Loading