added portfolio page
This commit is contained in:
parent
62105edce8
commit
2ec4b80c52
BIN
public/placeholder.png
Normal file
BIN
public/placeholder.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.6 KiB |
14
src/app/portfolio/bruh/page.tsx
Normal file
14
src/app/portfolio/bruh/page.tsx
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
import Link from "next/link"
|
||||
|
||||
export default function Sonion() {
|
||||
return (<>
|
||||
<Link href="/portfolio">
|
||||
<div className="fixed w-screen h-screen left-0 top-0 z-10000 items-center flex justify-center backdrop-brightness-50">
|
||||
<div className="space-y-2 max-w-3/5 p-5 bg-blue-950 border-2 border-solid border-gray-600 rounded-4xl z-10001 font-[Bitcount] text-gray-50 flex flex-col text-center justify-center items-center">
|
||||
<h1 className="text-5xl">Where are you trying to go 🥀</h1>
|
||||
<p className="text-xl">click anywhere to return to the portfolio</p>
|
||||
</div>
|
||||
</div>
|
||||
</Link>
|
||||
</>)
|
||||
}
|
||||
30
src/app/portfolio/layout.tsx
Normal file
30
src/app/portfolio/layout.tsx
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
import Project from "@/components/project_card";
|
||||
import { nextjs_tag, typescript_tag } from "@/types/tags";
|
||||
|
||||
export default function Portfolio({
|
||||
children,
|
||||
}: Readonly<{
|
||||
children: React.ReactNode;
|
||||
}>) {
|
||||
return (
|
||||
<>
|
||||
{children}
|
||||
<div className="flex flex-col space-y-10">
|
||||
<Project
|
||||
tags={[nextjs_tag, typescript_tag]}
|
||||
title="Periodicbrake.fr (this website)"
|
||||
desc="Yeah i think it deserves to be here, so what?"
|
||||
imgsrc="/scrot.png"
|
||||
link="/portfolio/bruh"
|
||||
/>
|
||||
<Project
|
||||
tags={[nextjs_tag, typescript_tag]}
|
||||
title="Hollowdex"
|
||||
desc="Sum hollow knight enemy collection shi"
|
||||
imgsrc="/placeholder.png"
|
||||
link="/portfolio/ongoingmaintenance/"
|
||||
/>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
||||
14
src/app/portfolio/ongoingmaintenance/page.tsx
Normal file
14
src/app/portfolio/ongoingmaintenance/page.tsx
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
import Link from "next/link"
|
||||
|
||||
export default function Sonion() {
|
||||
return (<>
|
||||
<Link href="/portfolio">
|
||||
<div className="fixed w-screen h-screen left-0 top-0 z-10000 items-center flex justify-center backdrop-brightness-50">
|
||||
<div className="space-y-2 max-w-3/5 p-5 bg-blue-950 border-2 border-solid border-gray-600 rounded-4xl z-10001 font-[Bitcount] text-gray-50 flex flex-col text-center justify-center items-center">
|
||||
<h1 className="text-5xl">The page or project you are trying to reach is currently under maintenance</h1>
|
||||
<p className="text-xl">click anywhere to return to the portfolio</p>
|
||||
</div>
|
||||
</div>
|
||||
</Link>
|
||||
</>)
|
||||
}
|
||||
|
|
@ -1,7 +1,3 @@
|
|||
export default function Portfolio() {
|
||||
return (
|
||||
<>
|
||||
|
||||
</>
|
||||
)
|
||||
return <></>;
|
||||
}
|
||||
14
src/app/portfolio/underconstruction/page.tsx
Normal file
14
src/app/portfolio/underconstruction/page.tsx
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
import Link from "next/link"
|
||||
|
||||
export default function Sonion() {
|
||||
return (<>
|
||||
<Link href="/portfolio">
|
||||
<div className="fixed w-screen h-screen left-0 top-0 z-10000 items-center flex justify-center backdrop-brightness-50">
|
||||
<div className="space-y-2 max-w-3/5 p-5 bg-blue-950 border-2 border-solid border-gray-600 rounded-4xl z-10001 font-[Bitcount] text-gray-50 flex flex-col text-center justify-center items-center">
|
||||
<h1 className="text-5xl">The page or project you are trying to reach is currently under construction</h1>
|
||||
<p className="text-xl">click anywhere to return to the portfolio</p>
|
||||
</div>
|
||||
</div>
|
||||
</Link>
|
||||
</>)
|
||||
}
|
||||
48
src/components/project_card.tsx
Normal file
48
src/components/project_card.tsx
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
import TagType from "@/types/tags";
|
||||
import Tag from "@/components/tags";
|
||||
import Image from "next/image";
|
||||
import Link from "next/link";
|
||||
|
||||
interface ProjectInt {
|
||||
tags: TagType[];
|
||||
title: string;
|
||||
desc: string;
|
||||
imgsrc: string;
|
||||
link: string;
|
||||
}
|
||||
|
||||
export default function Project({
|
||||
tags,
|
||||
title,
|
||||
desc,
|
||||
imgsrc,
|
||||
link,
|
||||
}: ProjectInt) {
|
||||
return (
|
||||
<>
|
||||
<Link href={link} className="rounded-4xl">
|
||||
<div
|
||||
id="card_container"
|
||||
className="bg-blue-950 flex flex-col space-y-4 w-200 border-solid border-2 border-gray-600 px-5 py-5 rounded-4xl hover:border-blue-900 transition-all duration-500 hover:shadow-[0_0_20px_rgba(30,58,138,0.5)]"
|
||||
>
|
||||
<Image
|
||||
src={imgsrc}
|
||||
alt="project image"
|
||||
width={1920}
|
||||
height={1080}
|
||||
className="w-full rounded-3xl"
|
||||
/>
|
||||
<div className="ml-3">
|
||||
<h1 className="font-[Bitcount] text-gray-50 text-4xl">{title}</h1>
|
||||
<p className="font-[Bitcount] text-gray-50 text-xl">{desc}</p>
|
||||
</div>
|
||||
<div className="flex flex-row space-x-5">
|
||||
{tags.map((tag, index) => (
|
||||
<Tag key={index} tag={tag} />
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</Link>
|
||||
</>
|
||||
);
|
||||
}
|
||||
Loading…
Reference in a new issue