Skip to content

Commit bf708fa

Browse files
committed
project csard
1 parent bc0365c commit bf708fa

3 files changed

Lines changed: 96 additions & 23 deletions

File tree

index.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -482,6 +482,9 @@ <h4 class="project-name">Dev Simulation</h4>
482482
</div>
483483
</article>
484484
</div>
485+
<div class="projects-cta">
486+
<a href="index.html?projects=all#projects" target="_blank" rel="noopener noreferrer" class="btn btn-primary">All Projects</a>
487+
</div>
485488
</div>
486489
</div>
487490
</section>

script.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,17 @@ const DOM = {
1818
}
1919
};
2020

21+
// ============================================
22+
// Project View Mode
23+
// ============================================
24+
const ProjectView = {
25+
init() {
26+
const params = new URLSearchParams(window.location.search);
27+
if (params.get('projects') === 'all') {
28+
document.body.classList.add('show-all-projects');
29+
}
30+
}
31+
};
2132

2233

2334
// ============================================
@@ -165,6 +176,7 @@ const addAnimationStyles = () => {
165176
// ============================================
166177
function init() {
167178
DOM.init();
179+
ProjectView.init();
168180
Navigation.init();
169181
SmoothScroll.init();
170182
addAnimationStyles();

style.css

Lines changed: 81 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ body {
131131

132132
.nav-links a:hover {
133133
opacity: 1;
134+
font-weight: 700;
134135
}
135136

136137
.nav-social {
@@ -799,6 +800,15 @@ section.section.hobby-section::before {
799800
box-shadow: 0 24px 42px var(--project-shadow);
800801
}
801802

803+
.projects-cta {
804+
display: none;
805+
margin-top: var(--space-xl);
806+
}
807+
808+
.projects-cta .btn {
809+
min-width: 180px;
810+
}
811+
802812
/* ============================================
803813
Section Backgrounds
804814
============================================ */
@@ -873,6 +883,7 @@ section.section.experience-section::before {
873883
}
874884

875885
section.section.contact-section {
886+
background: var(--blue-primary);
876887
min-height: 100vh;
877888
min-height: 100svh;
878889
display: flex;
@@ -1365,6 +1376,10 @@ section.section.experience-section .experience-desc {
13651376
.project-content {
13661377
padding: var(--space-lg);
13671378
}
1379+
1380+
.projects-cta {
1381+
display: none;
1382+
}
13681383

13691384
/* Skills */
13701385
.skill-tag {
@@ -1488,49 +1503,92 @@ section.section.experience-section .experience-desc {
14881503
font-size: 0.93rem;
14891504
}
14901505

1506+
.projects-grid {
1507+
grid-template-columns: 1fr;
1508+
gap: 0.85rem;
1509+
}
1510+
1511+
body:not(.show-all-projects) .projects-grid .project-card:nth-child(n + 4) {
1512+
display: none;
1513+
}
1514+
1515+
.projects-cta {
1516+
display: flex;
1517+
justify-content: center;
1518+
margin-top: var(--space-lg);
1519+
}
1520+
1521+
.projects-cta .btn {
1522+
width: auto;
1523+
min-width: 160px;
1524+
padding: 0.8rem 1.1rem;
1525+
font-size: 0.82rem;
1526+
}
1527+
1528+
body.show-all-projects .projects-cta {
1529+
display: none !important;
1530+
}
1531+
14911532
.project-art {
1492-
min-height: 240px;
1533+
min-height: 112px;
1534+
padding: 0.8rem;
14931535
}
14941536

14951537
.project-art__frame {
1496-
width: min(100%, 300px);
1538+
display: none;
14971539
}
14981540

14991541
.project-art__badge {
1500-
font-size: 0.6rem;
1501-
letter-spacing: 0.14em;
1542+
top: 0.8rem;
1543+
left: 0.8rem;
1544+
padding: 0.42rem 0.62rem;
1545+
font-size: 0.55rem;
1546+
letter-spacing: 0.12em;
15021547
}
15031548

15041549
.project-art__title {
1505-
font-size: 0.62rem;
1506-
letter-spacing: 0.22em;
1550+
left: 0.8rem;
1551+
bottom: 0.8rem;
1552+
font-size: 0.58rem;
1553+
letter-spacing: 0.2em;
15071554
}
15081555

1509-
.project-stats {
1510-
grid-template-columns: 1fr;
1556+
.project-content {
1557+
padding: 0.85rem 0.9rem 0.95rem;
15111558
}
15121559

1513-
.project-stats div {
1514-
border-right: none;
1515-
border-bottom: 1px solid var(--gray-200);
1516-
padding-right: 0;
1517-
padding-bottom: 0.75rem;
1518-
margin-bottom: 0.75rem;
1560+
.project-kicker {
1561+
font-size: 0.56rem;
1562+
letter-spacing: 0.14em;
15191563
}
15201564

1521-
.project-stats div:last-child {
1522-
border-bottom: none;
1523-
margin-bottom: 0;
1524-
padding-bottom: 0;
1565+
.project-name {
1566+
margin-top: 0.5rem;
1567+
font-size: 1.08rem;
1568+
line-height: 1.08;
15251569
}
15261570

1527-
.project-stats span {
1528-
font-size: 0.72rem;
1529-
letter-spacing: 0.2em;
1571+
.project-desc {
1572+
margin-top: 0.55rem;
1573+
font-size: 0.82rem;
1574+
line-height: 1.45;
1575+
-webkit-line-clamp: 2;
15301576
}
15311577

1532-
.project-stats strong {
1533-
font-size: 1rem;
1578+
.project-tech {
1579+
margin-top: 0.65rem;
1580+
font-size: 0.6rem;
1581+
letter-spacing: 0.12em;
1582+
}
1583+
1584+
.project-stats {
1585+
display: none;
1586+
}
1587+
1588+
.project-link {
1589+
margin-top: 0.75rem;
1590+
padding: 0.72rem 0.95rem;
1591+
font-size: 0.78rem;
15341592
}
15351593

15361594
/* Skills */

0 commit comments

Comments
 (0)