Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sponsors and Officer Update #24

Merged
merged 4 commits into from
Jan 13, 2025
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
33 changes: 33 additions & 0 deletions src/components/ContactInformationContainer.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import React from 'react'
import '../styles/sponsors.css';

interface ContactInformationContainerProps {
href?: string
altTxt?: string
title: string
body: string
img: string
}


function ContactInformationContainer(props : ContactInformationContainerProps) {
return (
<a href={props.href}>
<div className='cgE' style={{marginLeft:'2rem'}}>
<div className='cgPicHolder'>
<img src={props.img} className='cgPic' alt={props.altTxt}></img>
</div>
<div className='cgText'>
<div className='cgTitle'>
{props.title}
</div>
<div className='cgData'>
{props.body}
</div>
</div>
</div>
</a>
)
}

export default ContactInformationContainer
16 changes: 16 additions & 0 deletions src/components/CurrentSponsorCard.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import '../styles/sponsors.css'
import React from 'react';

interface CurrentSponsorCardProps {
img: string,
color: string,
}

function CurrentSponsorCard(props: CurrentSponsorCardProps) {

return (
<img className='currentSponsorCard' src={props.img} style={{backgroundColor: props.color}}/>
)
}

export default CurrentSponsorCard
18 changes: 18 additions & 0 deletions src/components/CurrentSponsorRow.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import React from 'react'
import '../styles/sponsors.css';
import texelArts from '../static/images/sponsor-images/texelArts.png'
import texasRobotics from '../static/images/sponsor-images/texasRobotics.jpg'
import serviceNow from '../static/images/sponsor-images/serviceNow.png'
import CurrentSponsorCard from './CurrentSponsorCard';
function CurrentSponsorRow() {

return (
<div className='currentSponsorRow'>
<CurrentSponsorCard img={serviceNow} color='rgb(30, 59, 61)'/>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is on me but can we make a colors resource file in one of the future pushes

<CurrentSponsorCard img={texasRobotics} color='white'/>
<CurrentSponsorCard img={texelArts} color='white'/>
</div>
)
}

export default CurrentSponsorRow
35 changes: 24 additions & 11 deletions src/components/OfficerCards.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ interface Props {
name?: string;
position?: string;
img?: string;
linkedIn: string;
linkedIn?: string;
email: string;
bio: string;
topAlignImage: boolean;
Expand Down Expand Up @@ -68,16 +68,29 @@ function OfficerCards(props: Props) {

<div className={drawerClass}>
<div className='dividerOfficerCard'><span></span></div>
<div className='cardDrawerContent'>
{props.bio}
</div>
<div >
<a href={props.linkedIn} target="_blank" rel="noreferrer">
<img src="https://img.icons8.com/color/48/000000/linkedin.png" className="socialMediaIcon"></img>
</a>
<a href={`mailto:${props.email}`} target="_blank" rel="noreferrer">
<img src="https://img.icons8.com/color/48/000000/gmail.png" className="socialMediaIcon"></img>
</a>
<div
style={{
display: 'flex',
flexDirection: 'column',
justifyContent: 'space-between',
height: '13rem',
}}>
<div className='cardDrawerContent'>
{props.bio}
</div>
<div
style={{
display:'flex',
gap: '0.2em',
justifyContent:'center'
}}>
{props.linkedIn && (<a href={props.linkedIn} target="_blank" rel="noreferrer">
<img src="https://img.icons8.com/color/48/000000/linkedin.png" className="socialMediaIcon"></img>
</a>)}
<a href={`mailto:${props.email}`} target="_blank" rel="noreferrer">
<img src="https://img.icons8.com/color/48/000000/gmail.png" className="socialMediaIcon"></img>
</a>
</div>
</div>
</div>
</div>
Expand Down
33 changes: 33 additions & 0 deletions src/components/SponsorPackage.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import React from 'react'

interface SponsorPackageProps {
tier: string
perks: string[]
}

function SponsorPackage(props: SponsorPackageProps) {
return (
<div>
<div className='tierCardHolder' style={{border: '0px solid #7fd6ff'}}>
<div className={`tierCard`} style={{}}>
<div className='tierCardContent'>
<div className={`tierTitle ${props.tier}`} > {props.tier} </div>
<div style={{display:'flex', justifyContent:'center'}}>
<div className="divHolder" style={{width:'70%', paddingTop:'0.5rem', paddingBottom:'0.6rem'}}>
<span className='popupDividerSD' style={{borderColor:""}}></span>
</div>
</div>
<ul className='perkList'>
{props.tier !== 'Silver' && (<li className={props.tier}>All Prior Perks</li>)}
{props.perks.map((perk, index) =>
<li key={index}>{perk}</li>
)}
</ul>
</div>
</div>
</div>
</div>
)
}

export default SponsorPackage
42 changes: 42 additions & 0 deletions src/components/SponsorPackageRow.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
import React from 'react';
import '../styles/sponsors.css';
import SponsorPackage from './SponsorPackage';

interface SponsorPackageRowProps {
isVisible:boolean,
}
function SponsorPackageRow(props : SponsorPackageRowProps) {
const silver = [
// "",
"Listed as a sponsor on our club T-shirt worn by 30+ members (name only)",
"Featured on a once-per-semester appreciation shoutout on our Instagram with 150+ followers",
"Highlighted as a sponsor on our club website",
"Provide us with your swag and flyers to distribute at our faculty talks and club meetings with a regular attendance of 30+"
];

const gold =[
// "",
"Listed as a sponsor on our club T-shirt worn by 30+ members (logo)",
"Secure a booth to advertise your company at our twice-semesterly Demo Days, which are attended by professors and 40+ UT Austin CS students",
"Obtain invitations to host workshops & recruiting events for our members up to 2 times a semester and with a potential turnout of 30+ students"
];

const diamond =[
// "",
"Gain access to our resume book containing the profiles of the 30+ members active on our engineering projects",
"Attain higher priority for invitations to host workshops & recruiting events for our members",
"Showcase your logo on ~50 club flyers posted around campus in areas such as the CS and engineering buildings, garnering ~10,000 views",
"Advertise your campus events and other opportunities on our Discord and mailing list, reaching a network of 500+ UT Austin students and alumni"
]

return (
<div className={`tierHolder ${props.isVisible ? 'vi' : ''}`} >
<SponsorPackage tier='Silver' perks={silver}/>
<SponsorPackage tier='Gold' perks={gold}/>
<SponsorPackage tier='Diamond' perks={diamond}/>
</div>

)
}

export default SponsorPackageRow
87 changes: 65 additions & 22 deletions src/pages/About.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,17 @@ import henryImg from '../static/images/officer/henry.jpg'
import nikhilImg from '../static/images/officer/nikhil.jpeg'
import abbhinavImg from '../static/images/officer/abbhinav.jpeg'
import annabelImg from '../static/images/officer/annabel.png'
import HurshImg from '../static/images/officer/hursh.jpeg'
import SavvyImg from '../static/images/officer/savvy.jpg'
import RileyImg from '../static/images/officer/riley.jpg'
import hurshImg from '../static/images/officer/hursh.jpeg'
import savvyImg from '../static/images/officer/savvy.jpg'
import rileyImg from '../static/images/officer/riley.jpg'
import cameronImg from '../static/images/officer/cameron.jpg'
import manasImg from '../static/images/officer/manas.jpg'
import nathanImg from '../static/images/officer/nathan.jpg'
import alexzanderImg from '../static/images/officer/alexzander.jpg'
import arnavImg from '../static/images/officer/arnav.jpg'
import thidaImg from '../static/images/officer/thida.jpg'
import zoeImg from '../static/images/officer/zoe.png'
import placeholderImg from '../static/images/officer/placeholder.png'

function About() {
const [aBGLoaded, setABGLoaded] = useState(false);
Expand Down Expand Up @@ -86,8 +94,7 @@ function About() {
<OfficerCards
name='Angelica Sharma'
position='President'
img={angelicaImg} bio="
Hi!! I’m a computer science & pre-medical student at UT. In my free time, I love to play the violin & piano, run, hike, and skateboard - I am also really passionate about edtech & biotech! "
img={angelicaImg} bio="Hi I'm Angelica! I'm a computer science & pre-medical student with a love for music and entrepreneurship. I love ECLAIR for its vibes and amazing robotics projects and look foward to meeting you all!"
linkedIn='https://www.linkedin.com/in/angelica-s-sharma/'
email='[email protected]' topAlignImage={false}/>
vishalkantharaju marked this conversation as resolved.
Show resolved Hide resolved
</Grid>
Expand All @@ -103,29 +110,65 @@ function About() {

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Sahana Ganapaty'
position='Historian'
img={sahanaImg} bio="I’m Sahana and I’m majoring in computer science. I’m interested in cybersecurity and AI. My hobbies outside of school include reading, visual arts, and journaling."
linkedIn='linkedin.com/in/sahana-ganapathy/'
email='sahanagana@utexas.edu' topAlignImage={false}/>
name='Cameron Cox'
position='Corporate Director'
img={cameronImg} bio="Hey y'all, I'm Cameron. I'm a computer Science Major with a passion for robotics and in my freetime I play D&D, piano and cook a lot."
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be possible to adjust the spacing a bit? It seems that cards with less text end up having a bit more empty space (pic attached).
Screenshot 2025-01-10 at 11 10 27 PM

linkedIn='https://www.linkedin.com/in/cameron-cox-ut/'
email='cameron.cox@utexas.edu' topAlignImage={false}/>
vishalkantharaju marked this conversation as resolved.
Show resolved Hide resolved
</Grid>

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Henry Castillo'
position='AI/ML Officer'
img={henryImg} bio="Hey! I'm Henry, a CS/Math major researching AI and deep learning. Outside of school, I like climbing, gaming, and working out!"
linkedIn='https://www.linkedin.com/in/henryandrecastillo/'
email='[email protected]' topAlignImage={false}/>
name='Thida Lay-Sok'
position='Outreach Director'
img={thidaImg} bio="Hello, my name is Thida because my actual name is too long. I'm an Aerospace Engineering and Physics double major. But when I'm not struggling, I enjoy reading and drawing. My goal in life is to marry Zoe Vo <3...but too bad she doesn't want me back"
linkedIn='https://www.linkedin.com/in/thidalaysok/'
email='[email protected]' topAlignImage={false}/>
vishalkantharaju marked this conversation as resolved.
Show resolved Hide resolved
</Grid>

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Riley Gonzalez'
name='Arnav Joshi'
position='Event Director'
img={arnavImg} bio="Hi, my name is Arnav. I'm a Computer Science major with a Robotics minor. I've led hydroponics and currently lead the ball balancer subteam. I'm also an officer in Texas Aerial Robotics!"
linkedIn='https://www.linkedin.com/in/arnavsjoshi/'
email='[email protected]' topAlignImage={false}/>
</Grid>

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Zoe Vo'
position='Outreach Director'
img={zoeImg} bio="Hi I'm Zoe and I'm a pyschology major. My favorite book series, movie franchise, and religion is The Hunger Games. Please marry me Thida"
linkedIn='https://www.linkedin.com/in/zoe-vo-b73b9b317/'
email='[email protected]' topAlignImage={true} />
</Grid>

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Manas Agrawal'
position='Technology Director'
img={manasImg} bio="Hi, my name is Manas! I'm a Computer Science and Mathematics double major. I enjoy chess, strategy video games, and am interested in Computer Vision applications in Robotics."
linkedIn='https://www.linkedin.com/in/manas-agrawal-41231a245/'
email='[email protected]' topAlignImage={true} />
</Grid>

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Nathan Chase'
position='Financial Director'
img={nathanImg} bio="Hey, the name is Nathan. I'm a double major in Computer Science and Asian Languages and Cultures. On my free time I enjoy engaging in community organizing, reading history, and cooking comfort food like Gumbo. And yes, it's okay to have tomatoes in your Gumbo!"
linkedIn='https://www.linkedin.com/in/nathan-t-chase/'
email='[email protected]' topAlignImage={true} />
</Grid>

<Grid className="cardContainer" item xs={12} sm={6} md={4}>
<OfficerCards
name='Alexzander Wilburr'
position='Freshman Representative'
img={RileyImg} bio="Hello!! I'm Riley a first year CS major. I enjoy shoegaze, silent hill, and MMA; with the hopes that one day I can contribute to medical robotics utilizing AI in order to better heal humanity. ^_^"
linkedIn='https://www.linkedin.com/in/rileygonzalez/'
email='rileydeechase@hotmail.com' topAlignImage={true} />
img={alexzanderImg} bio="Wassup, everyone! It's Alexzander! I'm a computer science major who loves playing games and sports (especially baseball). I am an avid note-taker because I have an atrocious memory :D. "
linkedIn=''
email='alexzanderwilburn2424@outlook.com' topAlignImage={true} />
</Grid>

</Grid>
Expand All @@ -149,19 +192,19 @@ function About() {
}}>
<div style={{paddingTop:"1em", paddingBottom:"1em"}}>
<Grid container rowGap={10} spacing={2}>
<Grid className="cardContainerFounder" item xs={12} sm={12} md={4}>
<Grid className="cardContainerFounder" item xs={12} sm={12} md={4}>
<OfficerCards
name='Savvy Chezhain'
position='Tech Lead, Chess Teacher'
img={SavvyImg} bio="Hey, I'm Savvy! I'm a Computer Science major and I love donuts, robots, and artificial intelligence."
img={savvyImg} bio="Hey, I'm Savvy! I'm a Computer Science major and I love donuts, robots, and artificial intelligence."
linkedIn='https://www.linkedin.com/in/sarvesh-chezhian-4a598b217/'
email='[email protected]' topAlignImage={true}/>
</Grid>
<Grid className="cardContainerFounder" item xs={12} sm={12} md={4}>
<OfficerCards
name='Hursh Jha'
position='Tech Lead, Chess Teacher'
img={HurshImg} bio="Hey there! I'm Hursh and I'm majoring in Computer Science and Math at UT. I'm particularly interested in cryptography and AI and how we can apply math to these fields to get the most out of them. Outside of school, my hobbies include reading, TCG's, and swimming."
img={hurshImg} bio="Hey there! I'm Hursh and I'm majoring in Computer Science and Math at UT. I'm interested in cryptography and AI and how we can apply math to these fields to get the most out of them. Outside of school, my hobbies include reading, TCG's, and swimming."
linkedIn='https://www.linkedin.com/in/hursh-jha-713820220/'
email='[email protected]' topAlignImage={true}/>
</Grid>
Expand Down
15 changes: 14 additions & 1 deletion src/pages/Homepage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import headerBackground from '../static/vectors/polygon-header.svg';
import headerImage_1 from '../static/images/drone_header.png';
import headerImage_2 from '../static/images/eclair_group.png';
import CalendarEmbed from '../components/CalendarEmbed';

import CurrentSponsorRow from '../components/CurrentSponsorRow';

function Homepage() {
const [screenSize, setScreenSize] = useState(getCurrentDimension());
Expand Down Expand Up @@ -191,6 +191,19 @@ function Homepage() {
<div className='box2-right'>
<YoutubeEmbed />
</div>
</section>
<section className='box2 box2-override4'
style={{
backgroundSize: 'cover',
display: 'flex',
flexDirection: 'column',
justifyContent: 'center',
alignItems: 'center',
paddingTop: '2px',
}}
>
<div className='box1_5-textCenter' id='boldText'> Our Sponsors </div>
<CurrentSponsorRow/>
</section>
{/* <section className='box2 box2-override4'
style={{
Expand Down
6 changes: 3 additions & 3 deletions src/pages/Projects.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ function Projects() {
desc: 'Chess Teacher is a robot that is designed to not only play a game of chess, but also teach the player how to improve, and adjust its style to allow the player to maximize their learning opportunities. We use an overhead camera coupled iwth computer vision to enable the robot to have an accurate understanding of the game, while using our own in house chess enginge to play the game - enabling the robot to have a comprehensive understanding over every position.',
git:"https://github.com/ECLAIR-Robotics/Chess_Teacher",
gantt:"https://docs.google.com/spreadsheets/d/1CbTH5hqcQgmXZnDkoqhe9yYVnaWjdlhSyqxfz_0mcEA/edit?usp=sharing",
finished:0,
finished:1,
video: chessVid,
SliderData : [
{
Expand Down Expand Up @@ -269,7 +269,7 @@ function Projects() {
img : carP,
name:'Autonomous Car',
lName:"Sahana Ganapathy, Nikhil Kalidasu",
members:"alekxander, marcus, diego, jana, masamu, jerry, noah",
members:"Alekxander, Marcus, Diego, Jana, Masamu, Jerry, Noah",
desc: 'The goal is to build an autonomous RC car with a raspberry pi computer and limited sensor hardware that can accept natural language input. We will be using neuroevolution techniques to try and maximize performance on minimal hardware support.',
git: "https://github.com/ECLAIR-Robotics/nlp-car",
gantt:"",
Expand Down Expand Up @@ -415,7 +415,7 @@ function Projects() {
<h1 className = 'projectsTitle'>Projects</h1>
<div className='filterContainer'>
<ul className='filterOptions'>
<li className={`filterOption ${((curFilter.length === 1) && curFilter.includes(0))? 'currentSetFilter' : ""} `} onClick={() => handleFilterChange([0])}>Current</li>
<li className={`filterOption ${((curFilter.length === 1) && curFilter.includes(0))? 'currentSetFilter' : ""} `} onClick={() => handleFilterChange([0])}>In-Progress</li>
<li className={`filterOption ${((curFilter.length === 1) && curFilter.includes(1))? 'currentSetFilter' : ""} `} onClick={() => handleFilterChange([1])}>Completed</li>
<li className={`filterOption ${(curFilter.length === 2) ? 'currentSetFilter' : ""}`} onClick={() => handleFilterChange([0, 1])}>All</li>
</ul>
Expand Down
Loading
Loading