Improved portfolio

This commit is contained in:
2025-11-22 11:34:41 +01:00
parent 34ea0ffb8e
commit e8451b8253
4 changed files with 85 additions and 92 deletions
+2 -2
View File
@@ -27,8 +27,8 @@ export async function GET(req: NextRequest) {
const data = await response.json(); const data = await response.json();
const total = const total =
data.data.user.contributionsCollection.contributionCalendar data?.data?.user?.contributionsCollection?.contributionCalendar
.totalContributions; ?.totalContributions;
return NextResponse.json({ total }, { status: 200 }); return NextResponse.json({ total }, { status: 200 });
} }
+1 -1
View File
@@ -17,7 +17,7 @@ export default function RootLayout({
<html lang="en"> <html lang="en">
<body className="antialiased bg-black"> <body className="antialiased bg-black">
<Background> <Background>
<div className="relative h-screen overflow-y-scroll">{children}</div> <div className="relative h-screen">{children}</div>
</Background> </Background>
</body> </body>
</html> </html>
+80 -87
View File
@@ -31,98 +31,91 @@ export default function App() {
}, []); }, []);
return ( return (
<div> <div className="w-full max-w-screen-lg mx-auto">
<div className="content-center w-full lg:mx-auto pt-5 relative z-20 pb-5 animate-fadeIn"> <div className="px-8 md:px-10 lg:px-15 xl:px-24">
<div className="w-full max-w-screen-lg mx-auto"> <h1 className="py-2 text-gray-300">Hey, I'm Klesti! 👋🏻</h1>
<div className="px-8 md:px-10 lg:px-15 xl:px-24"> <p className="font-semibold text-gray-300">
<h1 className="py-2 text-gray-300">Hey, I'm Klesti! 👋🏻</h1> A 15 year old Software Engineer from Tirane, Albania, with 6 years of
<p className="font-semibold text-gray-300"> experience, specializing in full-stack web development, desktop
A 15 year old Software Engineer from Tirane, Albania, with 6 years applications, TUI apps, and hacking. I also have a deep interest in
of experience, specializing in full-stack web development, desktop low-level programming.
applications, TUI apps, and hacking. I also have a deep interest </p>
in low-level programming.
</p>
{/* Socials and skill */} {/* Socials and skill */}
<div className="grid grid-cols-1 sm:grid-cols-2 gap-4 sm:gap-6 bg-transparent"> <div className="grid grid-cols-1 sm:grid-cols-2 gap-4 sm:gap-6 bg-transparent">
{/* socials */} {/* socials */}
<div className="pt-5 flex flex-row gap-5 w-max"> <div className="pt-5 flex flex-row gap-5 w-max">
<a href="https://github.com/kleo-dev/" target="blank_"> <a href="https://github.com/kleo-dev/" target="blank_">
<FontAwesomeIcon <FontAwesomeIcon
icon={faGithub} icon={faGithub}
className="text-slate-300 size-[2.3rem]" className="text-slate-300 size-[2.3rem]"
/> />
</a> </a>
<a <a
href="https://www.linkedin.com/in/klesti-selimaj-7a0162343/" href="https://www.linkedin.com/in/klesti-selimaj-7a0162343/"
target="blank_" target="blank_"
> >
<FontAwesomeIcon <FontAwesomeIcon
icon={faLinkedin} icon={faLinkedin}
className="text-slate-300 size-[2.3rem]" className="text-slate-300 size-[2.3rem]"
/> />
</a> </a>
<a <a href="https://www.instagram.com/selimaj.dev/" target="blank_">
href="https://www.instagram.com/selimaj.dev/" <FontAwesomeIcon
target="blank_" icon={faInstagram}
> className="text-slate-300 size-[2.3rem]"
<FontAwesomeIcon />
icon={faInstagram} </a>
className="text-slate-300 size-[2.3rem]" </div>
/> <div>
</a> <div className="p-3 bg-transparent-ish rounded-xl">
</div> <div className="mx-auto w-max flex flex-row gap-5">
<div> <Skill skill="Rust" icon={faRust} />
<div className="p-3 bg-transparent-ish rounded-xl"> <Skill skill="Go" icon={faGolang} />
<div className="mx-auto w-max flex flex-row gap-5"> <Skill skill="JavaScript" icon={faJs} />
<Skill skill="Rust" icon={faRust} /> <Skill skill="Java" icon={faJava} classInsert="p-1" />
<Skill skill="Go" icon={faGolang} /> <Skill skill="Python" icon={faPython} />
<Skill skill="JavaScript" icon={faJs} /> <Skill skill="React" icon={faReact} />
<Skill skill="Java" icon={faJava} classInsert="p-1" />
<Skill skill="Python" icon={faPython} />
<Skill skill="React" icon={faReact} />
</div>
</div>
</div> </div>
</div> </div>
<h1 className="text-slate-300">Pinned Projects</h1>
<section className="">
<PinnedRepos />
</section>
<h2 className="text-slate-300 mt-7">
{contribs || "Loading.."} contributions in the last year
</h2>
<section className="mt-4">
<GitHubCalendar
hideTotalCount
username="kleo-dev"
theme={{
light: [
"rgba(255, 255, 255, 0.1)",
"rgba(255, 255, 255, 0.3)",
"rgba(255, 255, 255, 0.5)",
"rgba(255, 255, 255, 0.7)",
"rgba(255, 255, 255, 1)",
],
dark: [
"rgba(255, 255, 255, 0.1)",
"rgba(255, 255, 255, 0.3)",
"rgba(255, 255, 255, 0.5)",
"rgba(255, 255, 255, 0.7)",
"rgba(255, 255, 255, 1)",
],
}}
/>
</section>
<footer className="mt-8 border-t pt-3">
If you see this i ❤️ you
<p className="text-slate-300 mx-auto w-max mt-2">
© 2025 Klesti. All rights reserved.
</p>
</footer>
</div> </div>
</div> </div>
<h1 className="text-slate-300">Pinned Projects</h1>
<section className="">
<PinnedRepos />
</section>
<h2 className="text-slate-300 mt-7">
{contribs || "Loading.."} contributions in the last year
</h2>
<section className="mt-4">
<GitHubCalendar
hideTotalCount
username="kleo-dev"
theme={{
light: [
"rgba(255, 255, 255, 0.1)",
"rgba(255, 255, 255, 0.3)",
"rgba(255, 255, 255, 0.5)",
"rgba(255, 255, 255, 0.7)",
"rgba(255, 255, 255, 1)",
],
dark: [
"rgba(255, 255, 255, 0.1)",
"rgba(255, 255, 255, 0.3)",
"rgba(255, 255, 255, 0.5)",
"rgba(255, 255, 255, 0.7)",
"rgba(255, 255, 255, 1)",
],
}}
/>
</section>
<footer className="mt-8 border-t pt-3 pb-8">
If you see this i ❤️ you
<p className="text-slate-300 mx-auto w-max mt-2">
© 2025 Klesti. All rights reserved.
</p>
</footer>
</div> </div>
</div> </div>
); );
+2 -2
View File
@@ -72,9 +72,9 @@ export default function Background({
}} }}
src="/logo.png" src="/logo.png"
alt="Logo" alt="Logo"
className="size-24 rounded-full border-slate-500 border" className="size-24 rounded-full border-slate-500 border z-10 absolute"
/> />
<div className="relative z-10">{children}</div> <div className="relative z-50 overflow-y-scroll">{children}</div>
</div> </div>
); );
} }