Skip to content

Commit 68297be

Browse files
committed
Fix (Light Mode Fixes)
1 parent 41600b3 commit 68297be

File tree

9 files changed

+260
-208
lines changed

9 files changed

+260
-208
lines changed

src/components/ConnectSection.jsx

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
import React from 'react';
2+
import { Box, Title, SimpleGrid, Paper, ThemeIcon, Text, Group } from '@mantine/core';
3+
import { IconBrandGithub, IconBrandLinkedin, IconMail } from '@tabler/icons-react';
4+
import { useColorScheme } from '../theme/ThemeProvider';
5+
6+
const ConnectSection = () => {
7+
const { colorScheme } = useColorScheme();
8+
const isDark = colorScheme === 'dark';
9+
10+
const connectOptions = [
11+
{
12+
title: 'GitHub',
13+
description: 'Check out my projects and contributions',
14+
icon: <IconBrandGithub size={30} color={isDark ? "white" : "#333"} />,
15+
link: 'https://github.com/HxnDev',
16+
color: 'rgba(155, 0, 255, 0.8)'
17+
},
18+
{
19+
title: 'LinkedIn',
20+
description: 'Connect with me professionally',
21+
icon: <IconBrandLinkedin size={30} color={isDark ? "white" : "#0077B5"} />,
22+
link: 'https://www.linkedin.com/in/hassan-shahzad-2a6617212/',
23+
color: '#0077B5'
24+
},
25+
{
26+
title: 'Email',
27+
description: 'Send me a direct message',
28+
icon: <IconMail size={30} color={isDark ? "white" : "#00B5AD"} />,
29+
link: 'mailto:[email protected]',
30+
color: '#00B5AD'
31+
}
32+
];
33+
34+
return (
35+
<Box my={60}>
36+
<Title
37+
order={2}
38+
mb={40}
39+
align="center"
40+
style={{
41+
backgroundImage: 'linear-gradient(45deg, #6200EE, #03DAC5)',
42+
backgroundClip: 'text',
43+
WebkitBackgroundClip: 'text',
44+
WebkitTextFillColor: 'transparent',
45+
fontSize: '2rem',
46+
fontWeight: 700
47+
}}
48+
>
49+
Connect With Me
50+
</Title>
51+
52+
<SimpleGrid
53+
cols={3}
54+
spacing="lg"
55+
breakpoints={[
56+
{ maxWidth: 'md', cols: 3 },
57+
{ maxWidth: 'sm', cols: 1 }
58+
]}
59+
>
60+
{connectOptions.map((option, index) => (
61+
<Paper
62+
key={index}
63+
component="a"
64+
href={option.link}
65+
target="_blank"
66+
rel="noopener noreferrer"
67+
p={30}
68+
radius="md"
69+
withBorder
70+
style={{
71+
backgroundColor: isDark ? 'rgba(28, 29, 34, 0.7)' : 'rgba(245, 245, 250, 0.7)',
72+
borderColor: isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)',
73+
textDecoration: 'none',
74+
transition: 'all 0.3s ease',
75+
cursor: 'pointer',
76+
textAlign: 'center'
77+
}}
78+
sx={{
79+
'&:hover': {
80+
transform: 'translateY(-5px)',
81+
boxShadow: '0 10px 20px rgba(0, 0, 0, 0.1)',
82+
borderColor: option.color
83+
}
84+
}}
85+
>
86+
<Group position="center" mb={15}>
87+
<ThemeIcon size={60} radius={60} style={{ backgroundColor: option.color }}>
88+
{option.icon}
89+
</ThemeIcon>
90+
</Group>
91+
92+
<Title order={4} align="center" mb={10} color={isDark ? "white" : "dark"}>
93+
{option.title}
94+
</Title>
95+
96+
<Text align="center" color={isDark ? "dimmed" : "dark.6"} size="sm">
97+
{option.description}
98+
</Text>
99+
</Paper>
100+
))}
101+
</SimpleGrid>
102+
</Box>
103+
);
104+
};
105+
106+
export default ConnectSection;

src/components/SponsorshipSection.jsx

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,22 @@
11
import React from 'react';
2-
import { Text, Stack, Group, Button, Paper } from '@mantine/core';
2+
import { Text, Stack, Group, Button, Paper, Title } from '@mantine/core';
33
import { IconHeart, IconCoffee } from '@tabler/icons-react';
4+
import { useColorScheme } from '../theme/ThemeProvider';
45

56
const SponsorshipSection = () => {
7+
const { colorScheme } = useColorScheme();
8+
const isDark = colorScheme === 'dark';
9+
610
return (
711
<Paper
812
p="xl"
913
radius="xl"
1014
withBorder
1115
style={{
12-
background: 'linear-gradient(145deg, rgba(28, 29, 34, 0.7), rgba(20, 21, 25, 0.9))',
13-
borderColor: 'rgba(155, 0, 255, 0.3)',
16+
background: isDark
17+
? 'linear-gradient(145deg, rgba(28, 29, 34, 0.7), rgba(20, 21, 25, 0.9))'
18+
: 'linear-gradient(145deg, rgba(245, 245, 250, 0.7), rgba(235, 235, 240, 0.9))',
19+
borderColor: isDark ? 'rgba(155, 0, 255, 0.3)' : 'rgba(155, 0, 255, 0.2)',
1420
boxShadow: '0 10px 30px rgba(0, 0, 0, 0.1), 0 1px 8px rgba(155, 0, 255, 0.2)',
1521
overflow: 'hidden',
1622
position: 'relative'
@@ -33,19 +39,20 @@ const SponsorshipSection = () => {
3339
/>
3440

3541
<Stack align="center" style={{ position: 'relative', zIndex: 1 }}>
36-
<Text
37-
size="xl"
38-
fw={700}
42+
<Title
43+
order={3}
3944
style={{
4045
background: 'linear-gradient(45deg, #9B00FF, #00F5FF)',
4146
WebkitBackgroundClip: 'text',
42-
WebkitTextFillColor: 'transparent'
47+
WebkitTextFillColor: 'transparent',
48+
marginBottom: '1rem',
49+
fontWeight: 700
4350
}}
4451
>
4552
Support My Work
46-
</Text>
53+
</Title>
4754

48-
<Text ta="center" c="dimmed" maw={600} mx="auto">
55+
<Text ta="center" c={isDark ? "dimmed" : "dark.6"} maw={600} mx="auto">
4956
If you find my projects helpful, consider supporting their continued development and maintenance.
5057
</Text>
5158

src/components/about/BiographySection.jsx

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,8 @@ const BiographySection = ({ bio, image }) => {
100100
background: isDark
101101
? 'linear-gradient(145deg, rgba(28, 29, 34, 0.9), rgba(15, 16, 20, 1))'
102102
: 'linear-gradient(145deg, rgba(255, 255, 255, 1), rgba(245, 245, 250, 1))',
103-
position: 'relative'
103+
position: 'relative',
104+
borderColor: isDark ? 'rgba(155, 0, 255, 0.3)' : 'rgba(155, 0, 255, 0.2)'
104105
}}
105106
>
106107
{/* Background decoration */}
@@ -120,7 +121,18 @@ const BiographySection = ({ bio, image }) => {
120121
/>
121122
)}
122123

123-
<Title order={2} mb="lg">Bio</Title>
124+
<Title
125+
order={2}
126+
mb="lg"
127+
style={{
128+
backgroundImage: 'linear-gradient(45deg, #6200EE, #03DAC5)',
129+
backgroundClip: 'text',
130+
WebkitBackgroundClip: 'text',
131+
WebkitTextFillColor: 'transparent',
132+
}}
133+
>
134+
Bio
135+
</Title>
124136

125137
<Grid gutter={50}>
126138
<Grid.Col md={4}>
@@ -197,7 +209,8 @@ const BiographySection = ({ bio, image }) => {
197209
size="lg"
198210
style={{
199211
lineHeight: 1.7,
200-
opacity: reducedMotion ? 1 : 0 // Set initial opacity for animation
212+
opacity: reducedMotion ? 1 : 0, // Set initial opacity for animation
213+
color: isDark ? 'white' : '#1A1B1E'
201214
}}
202215
>
203216
{paragraph}

src/components/home/HeroSection.jsx

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,15 @@ import React, { useRef, useEffect } from 'react';
22
import { Title, Text, Container, Button, Group, Grid, Box } from '@mantine/core';
33
import { IconDownload, IconBrandGithub, IconArrowRight } from '@tabler/icons-react';
44
import { gsap } from 'gsap';
5+
import { useColorScheme } from '../../theme/ThemeProvider';
56

67
const HeroSection = () => {
78
const containerRef = useRef(null);
89
const textRef = useRef(null);
910
const imageRef = useRef(null);
1011
const ctaRef = useRef(null);
12+
const { colorScheme } = useColorScheme();
13+
const isDark = colorScheme === 'dark';
1114

1215
// Animation on component mount
1316
useEffect(() => {
@@ -78,7 +81,9 @@ const HeroSection = () => {
7881
position: 'relative',
7982
padding: '80px 0 100px',
8083
overflow: 'hidden',
81-
background: 'radial-gradient(circle at 30% 50%, rgba(155, 0, 255, 0.15), transparent 70%)'
84+
background: isDark
85+
? 'radial-gradient(circle at 30% 50%, rgba(155, 0, 255, 0.15), transparent 70%)'
86+
: 'radial-gradient(circle at 30% 50%, rgba(155, 0, 255, 0.05), transparent 70%)'
8287
}}
8388
>
8489
{/* Floating orbs background decoration */}
@@ -123,7 +128,7 @@ const HeroSection = () => {
123128
<Text
124129
className="animate-item"
125130
size="xl"
126-
color="dimmed"
131+
color={isDark ? "dimmed" : "dark"}
127132
style={{
128133
maxWidth: '600px',
129134
lineHeight: 1.6,
@@ -162,19 +167,20 @@ const HeroSection = () => {
162167
href="https://github.com/HxnDev"
163168
target="_blank"
164169
size="lg"
165-
variant="outline"
170+
variant={isDark ? "outline" : "filled"}
166171
leftSection={<IconBrandGithub size={20} />}
167172
rightSection={<IconArrowRight size={16} />}
168173
radius="xl"
169174
style={{
170175
borderColor: '#9B00FF',
171-
color: '#00F5FF',
176+
color: isDark ? '#00F5FF' : 'white',
177+
backgroundColor: isDark ? 'transparent' : '#9B00FF',
172178
transition: 'all 0.3s ease'
173179
}}
174180
sx={{
175181
'&:hover': {
176182
transform: 'translateY(-3px)',
177-
background: 'rgba(155, 0, 255, 0.1)',
183+
background: isDark ? 'rgba(155, 0, 255, 0.1)' : '#8100d9',
178184
boxShadow: '0 8px 20px rgba(0, 0, 0, 0.1)'
179185
}
180186
}}

src/components/projects/EnhancedProjectCard.jsx

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import React, { useState, useEffect, useRef } from 'react';
22
import { Paper, Text, Title, Group, Badge, Box } from '@mantine/core';
33
import { IconBrandGithub, IconExternalLink, IconInfoCircle } from '@tabler/icons-react';
4+
import { useColorScheme } from '../../theme/ThemeProvider';
45

56
const EnhancedProjectCard = ({
67
title,
@@ -18,6 +19,8 @@ const EnhancedProjectCard = ({
1819
const [imageError, setImageError] = useState(false);
1920
const [isHovered, setIsHovered] = useState(false);
2021
const cardRef = useRef(null);
22+
const { colorScheme } = useColorScheme();
23+
const isDark = colorScheme === 'dark';
2124

2225
// Determine image source
2326
const imgSrc = imageError
@@ -89,7 +92,7 @@ const EnhancedProjectCard = ({
8992
transform: isHovered ? 'translateY(-5px)' : 'translateY(0)',
9093
boxShadow: isHovered ? '0 10px 25px rgba(155, 0, 255, 0.15)' : '0 4px 12px rgba(0, 0, 0, 0.1)',
9194
border: featured ? '2px solid rgba(155, 0, 255, 0.5)' : undefined,
92-
backgroundColor: 'rgba(28, 29, 34, 0.7)',
95+
backgroundColor: isDark ? 'rgba(28, 29, 34, 0.7)' : 'rgba(245, 245, 250, 0.7)',
9396
position: 'relative',
9497
overflow: 'hidden',
9598
cursor: 'pointer' // Add pointer cursor to indicate clickable
@@ -180,8 +183,8 @@ const EnhancedProjectCard = ({
180183

181184
{/* Content */}
182185
<Box style={{ flex: 1, display: 'flex', flexDirection: 'column', position: 'relative', zIndex: 1 }}>
183-
<Title order={4} mb="xs" style={{ color: '#e0e0e0' }}>{title}</Title>
184-
<Text size="sm" color="dimmed" mb="md" style={{ flex: 1 }}>{description}</Text>
186+
<Title order={4} mb="xs" style={{ color: isDark ? '#e0e0e0' : '#1A1B1E' }}>{title}</Title>
187+
<Text size="sm" color={isDark ? "dimmed" : "dark.6"} mb="md" style={{ flex: 1 }}>{description}</Text>
185188

186189
<Group spacing="xs" mb="md">
187190
{technologies && technologies.slice(0, 3).map((tech, index) => (
@@ -264,8 +267,8 @@ const EnhancedProjectCard = ({
264267
padding: '8px 12px',
265268
borderRadius: '25px',
266269
marginLeft: 'auto',
267-
color: '#00F5FF',
268-
backgroundColor: isHovered ? 'rgba(0, 245, 255, 0.1)' : 'transparent',
270+
color: isDark ? '#00F5FF' : '#6200EE',
271+
backgroundColor: isHovered ? (isDark ? 'rgba(0, 245, 255, 0.1)' : 'rgba(98, 0, 238, 0.1)') : 'transparent',
269272
fontSize: '14px',
270273
display: 'flex',
271274
alignItems: 'center',

src/components/projects/FilterControls.jsx

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import React, { useState } from 'react';
22
import { Group, Button, TextInput, Box, Transition, Paper } from '@mantine/core';
33
import { IconSearch, IconFilter, IconX } from '@tabler/icons-react';
4+
import { useColorScheme } from '../../theme/ThemeProvider';
45

56
const FilterControls = ({
67
categories = [],
@@ -11,6 +12,8 @@ const FilterControls = ({
1112
onReset
1213
}) => {
1314
const [showFilters, setShowFilters] = useState(false);
15+
const { colorScheme } = useColorScheme();
16+
const isDark = colorScheme === 'dark';
1417

1518
// Handle search input clearing
1619
const handleClearSearch = () => {
@@ -41,9 +44,9 @@ const FilterControls = ({
4144
p="md"
4245
mb="xl"
4346
style={{
44-
background: 'rgba(28, 29, 34, 0.8)',
47+
background: isDark ? 'rgba(28, 29, 34, 0.8)' : 'rgba(245, 245, 250, 0.8)',
4548
backdropFilter: 'blur(12px)',
46-
border: '1px solid rgba(155, 0, 255, 0.15)'
49+
border: isDark ? '1px solid rgba(155, 0, 255, 0.15)' : '1px solid rgba(155, 0, 255, 0.3)'
4750
}}
4851
>
4952
{/* Filter toggle button */}
@@ -95,8 +98,9 @@ const FilterControls = ({
9598
width: '100%',
9699
transition: 'all 0.3s ease',
97100
input: {
98-
backgroundColor: 'rgba(40, 40, 45, 0.8)',
99-
borderRadius: '30px' // Ensure input field is also rounded
101+
backgroundColor: isDark ? 'rgba(40, 40, 45, 0.8)' : 'rgba(255, 255, 255, 0.8)',
102+
borderRadius: '30px', // Ensure input field is also rounded
103+
color: isDark ? 'white' : 'black'
100104
}
101105
}}
102106
/>

0 commit comments

Comments
 (0)