Skip to content

Commit c937dd2

Browse files
committed
UPDATE Portfolio
- Added summer 2025 details - Updated summaries data to include just one summary - Updated Portfolio component to show active portfolio tab - Removed unused components from certifications folder
1 parent b7278e7 commit c937dd2

13 files changed

Lines changed: 85 additions & 190 deletions

components/custom/certifications/certification-carousel-card.tsx

Lines changed: 0 additions & 48 deletions
This file was deleted.

components/custom/certifications/certification-carousel.tsx

Lines changed: 0 additions & 54 deletions
This file was deleted.

components/custom/certifications/certification-details.tsx

Lines changed: 0 additions & 5 deletions
This file was deleted.

components/custom/certifications/certifications.tsx

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
"use client";
22

33
import certifications from "../../../public/data/certifications.json";
4-
import CertificationDetails from "./certification-details";
5-
import CertificationCarousel from "./certification-carousel";
6-
import { useState } from "react";
74
import Card from "../card/card";
85
import CardSubHeader from "../card/card-sub-header";
96
import Link from "next/link";
@@ -50,12 +47,4 @@ const Certifications = () => {
5047
);
5148
};
5249

53-
const CertificationsNew = () => {
54-
return (
55-
<div className="flex w-full">
56-
<CertificationCarousel />
57-
</div>
58-
);
59-
};
60-
6150
export default Certifications;

components/custom/portfolio/academic-projects-button.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
import { GraduationCap } from "lucide-react";
22
import PortfolioButton from "./portfolio-button";
33

4-
const AcademicProjectsButton = () => {
4+
interface AcademicProjectsButtonProps {
5+
path: string;
6+
}
7+
8+
const AcademicProjectsButton = ({ path }: AcademicProjectsButtonProps) => {
59
return (
610
<PortfolioButton
711
symbol={<GraduationCap className="mr-2 h-4 w-4" />}
812
text="Academic Projects"
13+
href="/academic-projects"
14+
path={path}
915
/>
1016
);
1117
};

components/custom/portfolio/articles-button.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
import { ScrollText } from "lucide-react";
22
import PortfolioButton from "./portfolio-button";
33

4-
const ArticlesButton = () => {
4+
interface ArticlesButtonProps {
5+
path: string;
6+
}
7+
8+
const ArticlesButton = ({ path }: ArticlesButtonProps) => {
59
return (
610
<PortfolioButton
711
symbol={<ScrollText className="mr-2 h-4 w-4" />}
812
text="Articles"
13+
href="/articles"
14+
path={path}
915
/>
1016
);
1117
};

components/custom/portfolio/certifications-button.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
import { FileBadge } from "lucide-react";
22
import PortfolioButton from "./portfolio-button";
33

4-
const CertificationsButton = () => {
4+
interface CertificationsButtonProps {
5+
path: string;
6+
}
7+
8+
const CertificationsButton = ({ path }: CertificationsButtonProps) => {
59
return (
610
<PortfolioButton
711
symbol={<FileBadge className="mr-2 h-4 w-4" />}
812
text="Certifications"
13+
href="/certifications"
14+
path={path}
915
/>
1016
);
1117
};

components/custom/portfolio/personal-projects-button.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
import { LayoutGrid } from "lucide-react";
22
import PortfolioButton from "./portfolio-button";
33

4-
const PersonalProjectsButton = () => {
4+
interface PersonalProjectsButtonProps {
5+
path: string;
6+
}
7+
8+
const PersonalProjectsButton = ({ path }: PersonalProjectsButtonProps) => {
59
return (
610
<PortfolioButton
711
symbol={<LayoutGrid className="mr-2 h-4 w-4" />}
812
text="Personal Projects"
13+
href="/personal-projects"
14+
path={path}
915
/>
1016
);
1117
};

components/custom/portfolio/portfolio-button.tsx

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,33 @@
11
import { Button } from "@/components/ui/button";
2+
import { cn } from "@/lib/utils";
3+
import Link from "next/link";
24

35
interface PortfolioButtonProps {
46
symbol: React.ReactNode;
57
text: string;
8+
href: string;
9+
path?: string;
610
}
711

8-
const PortfolioButton = ({ symbol, text }: PortfolioButtonProps) => {
12+
const PortfolioButton = ({
13+
symbol,
14+
text,
15+
href,
16+
path = "",
17+
}: PortfolioButtonProps) => {
918
return (
10-
<Button
11-
variant="ghost"
12-
className="w-full flex justify-start transition-all duration-500"
13-
>
14-
{symbol}
15-
{text}
16-
</Button>
19+
<Link href={href}>
20+
<Button
21+
variant="ghost"
22+
className={cn(
23+
"w-full flex justify-start transition-all duration-500",
24+
path === href && "bg-accent text-accent-foreground"
25+
)}
26+
>
27+
{symbol}
28+
{text}
29+
</Button>
30+
</Link>
1731
);
1832
};
1933

components/custom/portfolio/portfolio.tsx

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,20 @@ import AcademicProjectsButton from "./academic-projects-button";
55
import ArticlesButton from "./articles-button";
66
import CertificationsButton from "./certifications-button";
77
import PersonalProjectsButton from "./personal-projects-button";
8+
import { usePathname } from "next/navigation";
89

910
const Portfolio = () => {
11+
const path = usePathname();
12+
1013
return (
1114
<div className="grid grid-cols-2 lg:flex gap-4">
12-
<Link className="w-full" href="/academic-projects">
13-
<AcademicProjectsButton />
14-
</Link>
15+
<AcademicProjectsButton path={path} />
1516

16-
<Link className="w-full" href="personal-projects">
17-
<PersonalProjectsButton />
18-
</Link>
17+
<PersonalProjectsButton path={path} />
1918

20-
<Link className="w-full" href="/articles">
21-
<ArticlesButton />
22-
</Link>
19+
<ArticlesButton path={path} />
2320

24-
<Link className="w-full" href="/certifications">
25-
<CertificationsButton />
26-
</Link>
21+
<CertificationsButton path={path} />
2722
</div>
2823
);
2924
};

0 commit comments

Comments
 (0)