= ({
onMouseEnter={() => handleMouseEnter(currentIndex)}
onMouseLeave={handleMouseLeave}
width="280"
+ loading='lazy'
/>
);
};
diff --git a/src/Components/Home/Hero/RightContainer.tsx b/src/Components/Home/Hero/RightContainer.tsx
index ac01039..5d46da3 100644
--- a/src/Components/Home/Hero/RightContainer.tsx
+++ b/src/Components/Home/Hero/RightContainer.tsx
@@ -1,20 +1,8 @@
import React from 'react';
import AnimatedImage from './AnimatedImage';
+import { imageNames, hoverImageNames } from '../../Data/imageNames';
import './Hero.scss';
-const imageNames = [
- 'idleSprite0.png',
- 'idleSprite1.png',
- 'idleSprite2.png',
- 'idleSprite3.png',
-];
-const hoverImageNames = [
- 'hoverIdleSprite0.png',
- 'hoverIdleSprite1.png',
- 'hoverIdleSprite2.png',
- 'hoverIdleSprite3.png',
-];
-
const RightContainer: React.FC = () => {
return (
diff --git a/src/Components/Interfaces/animatedImageProps.ts b/src/Components/Interfaces/animatedImageProps.ts
new file mode 100644
index 0000000..1587d0f
--- /dev/null
+++ b/src/Components/Interfaces/animatedImageProps.ts
@@ -0,0 +1,4 @@
+export interface AnimatedImageProps {
+ imageNames: string[];
+ hoverImageNames: string[];
+}
diff --git a/src/Components/Interfaces/projectItemProps.ts b/src/Components/Interfaces/projectItemProps.ts
index 62dd60e..248f008 100644
--- a/src/Components/Interfaces/projectItemProps.ts
+++ b/src/Components/Interfaces/projectItemProps.ts
@@ -1,5 +1,5 @@
import { Project } from './projects';
export interface ProjectItemProps {
- project: Project;
- }
\ No newline at end of file
+ project: Project;
+}
diff --git a/src/Components/Interfaces/projects.ts b/src/Components/Interfaces/projects.ts
index 922f2a5..70e4bc8 100644
--- a/src/Components/Interfaces/projects.ts
+++ b/src/Components/Interfaces/projects.ts
@@ -1,8 +1,8 @@
export interface Project {
- image: string;
- title: string;
- languages: string;
- description: string;
- github?: string;
- website?: string;
- }
\ No newline at end of file
+ image: string;
+ title: string;
+ languages: string;
+ description: string;
+ github?: string;
+ website?: string;
+}
diff --git a/src/Components/Interfaces/types.ts b/src/Components/Interfaces/types.ts
index f3e9008..5a83eef 100644
--- a/src/Components/Interfaces/types.ts
+++ b/src/Components/Interfaces/types.ts
@@ -1,5 +1,5 @@
export type Statistics = {
- [key: string]: {
- [key: string]: number | string;
- } | null;
- };
\ No newline at end of file
+ [key: string]: {
+ [key: string]: number | string;
+ } | null;
+};
diff --git a/src/Components/data/education.ts b/src/Components/data/education.ts
index 4a1f7d8..357a4f2 100644
--- a/src/Components/data/education.ts
+++ b/src/Components/data/education.ts
@@ -1,16 +1,18 @@
export const education = [
- {
- date: 'September 2024 - Ongoing',
- title: 'Bachelors of Economics',
- institution: 'Concordia University',
- description: 'Continuing my education exploring the world of economics and finance to bridge the gap between tech and business.',
- statsKey: 'Economics'
- },
- {
- date: 'August 2021 - May 2024',
- title: 'Computer Science DEC',
- institution: 'John Abbott College',
- description: 'Graduated with a focus on software/app/mobile development, including programming and IoT.',
- statsKey: 'Academics'
- }
- ];
\ No newline at end of file
+ {
+ date: 'September 2024 - Ongoing',
+ title: 'Bachelors of Economics',
+ institution: 'Concordia University',
+ description:
+ 'Continuing my education exploring the world of economics and finance to bridge the gap between tech and business.',
+ statsKey: 'Economics',
+ },
+ {
+ date: 'August 2021 - May 2024',
+ title: 'Computer Science DEC',
+ institution: 'John Abbott College',
+ description:
+ 'Graduated with a focus on software/app/mobile development, including programming and IoT.',
+ statsKey: 'Academics',
+ },
+];
diff --git a/src/Components/data/experience.ts b/src/Components/data/experience.ts
index 6f06736..d6ca818 100644
--- a/src/Components/data/experience.ts
+++ b/src/Components/data/experience.ts
@@ -1,37 +1,41 @@
export const experience = [
- {
- date: 'June 2024 - Ongoing',
- title: 'SDE Intern',
- company: 'Tail\'ed',
- description: 'Building the company website & developing an AI product.',
- statsKey: 'SDE Intern'
- },
- {
- date: 'March 2024 - Ongoing',
- title: 'Head Delegate Montreal',
- company: 'Canadian University Software Engineering Conference (CUSEC)',
- description: 'Leading the delegation of post-secondary students across Montreal for the annual conference.',
- statsKey: 'Head Delegate Montreal'
- },
- {
- date: 'January 2024 - May 2024',
- title: 'IT Intern',
- company: 'Town of Kirkland',
- description: 'Delivered technical support to government employees and received training in cybersecurity under the Cybersecurity Analyst of the municipality.',
- statsKey: 'IT Intern'
- },
- {
- date: 'March 2024 - July 2024',
- title: 'Director',
- company: 'JACHacks',
- description: 'Led the organization of the hackathon, overseeing event planning and execution.',
- statsKey: 'Director'
- },
- {
- date: 'February 2024 - April 2024',
- title: 'R&D Fellowship',
- company: 'AI Launch Lab',
- description: 'Learned under PhDs while developing TradeMind for my fellowship project.',
- statsKey: 'R&D Fellowship'
- }
- ];
\ No newline at end of file
+ {
+ date: 'June 2024 - Ongoing',
+ title: 'SDE Intern',
+ company: "Tail'ed",
+ description: 'Building the company website & developing an AI product.',
+ statsKey: 'SDE Intern',
+ },
+ {
+ date: 'March 2024 - Ongoing',
+ title: 'Head Delegate Montreal',
+ company: 'Canadian University Software Engineering Conference (CUSEC)',
+ description:
+ 'Leading the delegation of post-secondary students across Montreal for the annual conference.',
+ statsKey: 'Head Delegate Montreal',
+ },
+ {
+ date: 'January 2024 - May 2024',
+ title: 'IT Intern',
+ company: 'Town of Kirkland',
+ description:
+ 'Delivered technical support to government employees and received training in cybersecurity under the Cybersecurity Analyst of the municipality.',
+ statsKey: 'IT Intern',
+ },
+ {
+ date: 'March 2024 - July 2024',
+ title: 'Director',
+ company: 'JACHacks',
+ description:
+ 'Led the organization of the hackathon, overseeing event planning and execution.',
+ statsKey: 'Director',
+ },
+ {
+ date: 'February 2024 - April 2024',
+ title: 'R&D Fellowship',
+ company: 'AI Launch Lab',
+ description:
+ 'Learned under PhDs while developing TradeMind for my fellowship project.',
+ statsKey: 'R&D Fellowship',
+ },
+];
diff --git a/src/Components/data/statistics.ts b/src/Components/data/statistics.ts
index 939ac3e..c27b717 100644
--- a/src/Components/data/statistics.ts
+++ b/src/Components/data/statistics.ts
@@ -1,28 +1,28 @@
import { Statistics } from '../Interfaces/types';
export const statistics: Statistics = {
- 'SDE Intern': {
- productsMade: 3,
- languagesAndFrameworksUsed: 5,
- },
- 'Head Delegate Montreal': {
- schools: '10+'
- },
- 'IT Intern': {
- supportCasesResolved: '100+',
- cybersecurityVulnerabilitiesResolved: '4500+'
- },
- 'Director': {
- attendees: '130+'
- },
- 'R&D Fellowship': {
- inProgramHistory: 'Best project'
- },
- 'Academics': {
- inFinalSemester: '4.0 GPA',
- outstandingAcademicImprovementAward: 'Awarded the',
- semesterlyAwardedScholarship: '$1500',
- capstoneProjectInProgramHistory: 'Best'
- },
- 'Economics': null // I have no stats yet
- };
\ No newline at end of file
+ 'SDE Intern': {
+ productsMade: 3,
+ languagesAndFrameworksUsed: 5,
+ },
+ 'Head Delegate Montreal': {
+ schools: '10+',
+ },
+ 'IT Intern': {
+ supportCasesResolved: '100+',
+ cybersecurityVulnerabilitiesResolved: '4500+',
+ },
+ Director: {
+ attendees: '130+',
+ },
+ 'R&D Fellowship': {
+ inProgramHistory: 'Best project',
+ },
+ Academics: {
+ inFinalSemester: '4.0 GPA',
+ outstandingAcademicImprovementAward: 'Awarded the',
+ semesterlyAwardedScholarship: '$1500',
+ capstoneProjectInProgramHistory: 'Best',
+ },
+ Economics: null, // I have no stats yet
+};