Skip to content

Commit 51b0f00

Browse files
committed
Updated carousel viewing
1 parent 72997d9 commit 51b0f00

File tree

2 files changed

+29
-21
lines changed

2 files changed

+29
-21
lines changed
95.9 KB
Loading

next-js-app/src/app/home/page.tsx

Lines changed: 29 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import envolvlyProjectThumbnail from "../../../public/image-assets/projects/Envo
3939
import MITJOSProjectThumbnail from "../../../public/image-assets/projects/MIT-JOS/thumbnail.png";
4040
import WormholeProjectThumbnail from "../../../public/image-assets/projects/Wormhole/thumbnail.png";
4141
import StuntCVProjectThumbnail from "../../../public/image-assets/projects/StuntCV/thumbnail.png";
42+
import ResumAIProjectThumbnail from "../../../public/image-assets/projects/ResumAI/thumbnail.png";
4243

4344
import fileIcon from "../../../public/file.svg";
4445
import globeIcon from "../../../public/globe.svg";
@@ -155,7 +156,7 @@ const projects: Project[] = [
155156
{
156157
name: "Envolvly",
157158
technologies: "GitHub, Docker, AWS, React, Typescript, MongoDB",
158-
period: "September 2023 - Current",
159+
period: "September 2023 - Present",
159160
description:
160161
"Laid groundwork for tech infrastructure, resulting in a robust, scalable application reaching 1,000+ unique users.",
161162
longDescription:
@@ -165,7 +166,7 @@ const projects: Project[] = [
165166
{
166167
name: "MIT JOS",
167168
technologies: "C, C++, Assembly, OS concepts, Computer Architecture",
168-
period: "March 2024 - June 2024",
169+
period: "March 2024",
169170
description:
170171
"Completed labs, assignments, & built an Operating system based off of MIT’s JOS curriculum.",
171172
longDescription:
@@ -200,6 +201,16 @@ const projects: Project[] = [
200201
"An AI-powered job search application. Creates curated Cover letter, anticipated Interview questions, and more",
201202
longDescription:
202203
"An AI-powered resume builder and analyzer that helps users create and optimize their resumes for job applications.",
204+
image: ResumAIProjectThumbnail,
205+
},
206+
{
207+
name: "My next big thing.",
208+
technologies: "???",
209+
period: "???",
210+
description:
211+
"My next big thing could be built with your team. Contact me to make it happen.",
212+
longDescription:
213+
"My next big thing could be built with your team. Contact me to make it happen.",
203214
image: globeIcon,
204215
},
205216
];
@@ -376,7 +387,7 @@ function ProjectCard({ project }: { project: Project }) {
376387
return (
377388
<>
378389
<div
379-
className="bg-gray-50 dark:bg-gray-900 border border-gray-200 dark:border-gray-800 rounded-lg p-6 hover:border-gray-300 dark:hover:border-gray-700 transition-all duration-300 cursor-pointer"
390+
className="bg-gray-50 dark:bg-gray-900 border border-gray-200 dark:border-gray-800 rounded-lg p-6 hover:border-gray-300 dark:hover:border-gray-700 transition-all duration-300 cursor-pointer h-full flex flex-col"
380391
onClick={() => setIsModalOpen(true)}
381392
>
382393
{project.image && (
@@ -389,23 +400,25 @@ function ProjectCard({ project }: { project: Project }) {
389400
/>
390401
</div>
391402
)}
392-
<h3 className="text-xl font-bold">{project.name}</h3>
393-
<p className="text-sm text-gray-500 mb-2">{project.period}</p>
394-
<p className="text-gray-600 dark:text-gray-400 mb-4">
395-
{project.description}
396-
</p>
397-
<p className="text-sm text-gray-500 font-mono">
398-
{project.technologies}
399-
</p>
403+
<div className="flex flex-col flex-grow">
404+
<h3 className="text-xl font-bold">{project.name}</h3>
405+
<p className="text-sm text-gray-500 mb-2">{project.period}</p>
406+
<p className="text-gray-600 dark:text-gray-400 mb-4 flex-grow">
407+
{project.description}
408+
</p>
409+
<p className="text-sm text-gray-500 font-mono">
410+
{project.technologies}
411+
</p>
412+
</div>
400413
</div>
401414

402415
{isModalOpen && (
403416
<div
404-
className="fixed inset-0 bg-black bg-opacity-50 backdrop-blur-sm flex items-center justify-center z-50"
417+
className="fixed inset-0 backdrop-blur-lg flex items-center justify-center z-50 p-4"
405418
onClick={() => setIsModalOpen(false)}
406419
>
407420
<div
408-
className="bg-white dark:bg-gray-800 p-8 rounded-lg shadow-lg w-full max-w-2xl"
421+
className="bg-white dark:bg-gray-900 p-8 rounded-lg shadow-2xl w-full max-w-2xl border border-gray-200 dark:border-gray-800"
409422
onClick={(e) => e.stopPropagation()}
410423
>
411424
{project.image && (
@@ -428,7 +441,7 @@ function ProjectCard({ project }: { project: Project }) {
428441
</p>
429442
<button
430443
onClick={() => setIsModalOpen(false)}
431-
className="mt-6 bg-gray-200 dark:bg-gray-600 text-gray-800 dark:text-gray-200 font-bold py-2 px-4 rounded"
444+
className="mt-6 bg-gray-200 dark:bg-gray-700 text-gray-800 dark:text-gray-200 font-bold py-2 px-4 rounded-lg hover:bg-gray-300 dark:hover:bg-gray-600 transition-colors"
432445
>
433446
Close
434447
</button>
@@ -525,14 +538,9 @@ export default function HomePage() {
525538

526539
<section id="projects">
527540
<h2 className="text-4xl font-bold mb-8 text-center">Projects</h2>
528-
<div className="flex overflow-x-auto gap-8 pb-8">
541+
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
529542
{projects.map((proj, index) => (
530-
<div
531-
key={index}
532-
className="flex-shrink-0 w-full md:w-1/2 lg:w-1/3"
533-
>
534-
<ProjectCard project={proj} />
535-
</div>
543+
<ProjectCard key={index} project={proj} />
536544
))}
537545
</div>
538546
</section>

0 commit comments

Comments
 (0)