First Commit
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
import Button from "@/components/lib/layout/Button";
|
||||
import H1 from "@/components/lib/layout/H1";
|
||||
import Row from "@/components/lib/layout/Row";
|
||||
import Section from "@/components/lib/layout/Section";
|
||||
import Span from "@/components/lib/layout/Span";
|
||||
import Stack from "@/components/lib/layout/Stack";
|
||||
import Layout from "@/layouts/main";
|
||||
import { Antenna, UtilityPole } from "lucide-react";
|
||||
|
||||
export default function Home() {
|
||||
return (
|
||||
<Layout>
|
||||
<Section>
|
||||
<Stack>
|
||||
<Row className="items-center gap-20">
|
||||
<UtilityPole
|
||||
size={100}
|
||||
strokeWidth={1}
|
||||
className="mt-4"
|
||||
opacity={0.5}
|
||||
/>
|
||||
<Stack className="gap-4">
|
||||
<H1 className="text-[60px] m-0 leading-[50px]">
|
||||
404
|
||||
</H1>
|
||||
<Span>Page Not Found!</Span>
|
||||
<Row className="gap-4 max-w-[400px] w-[400px]">
|
||||
<Button
|
||||
onClick={() => window.history.back()}
|
||||
className="grow"
|
||||
>
|
||||
Go Back
|
||||
</Button>
|
||||
<Button
|
||||
href="/"
|
||||
variant="outlined"
|
||||
linkProps={{
|
||||
className: "grow",
|
||||
}}
|
||||
className="w-full"
|
||||
>
|
||||
Home
|
||||
</Button>
|
||||
</Row>
|
||||
</Stack>
|
||||
</Row>
|
||||
</Stack>
|
||||
</Section>
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
+1
-1
@@ -2,5 +2,5 @@ import "@/styles/globals.css";
|
||||
import type { AppProps } from "next/app";
|
||||
|
||||
export default function App({ Component, pageProps }: AppProps) {
|
||||
return <Component {...pageProps} />;
|
||||
return <Component {...pageProps} />;
|
||||
}
|
||||
|
||||
+9
-9
@@ -1,13 +1,13 @@
|
||||
import { Html, Head, Main, NextScript } from "next/document";
|
||||
|
||||
export default function Document() {
|
||||
return (
|
||||
<Html lang="en">
|
||||
<Head />
|
||||
<body className="antialiased">
|
||||
<Main />
|
||||
<NextScript />
|
||||
</body>
|
||||
</Html>
|
||||
);
|
||||
return (
|
||||
<Html lang="en" className="dark">
|
||||
<Head />
|
||||
<body className="antialiased">
|
||||
<Main />
|
||||
<NextScript />
|
||||
</body>
|
||||
</Html>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
import Layout from "@/layouts/main";
|
||||
import Main from "@/components/pages/about";
|
||||
|
||||
export default function ContactPage() {
|
||||
return (
|
||||
<Layout>
|
||||
<Main />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import Layout from "@/layouts/main";
|
||||
import Main from "@/components/pages/contact";
|
||||
|
||||
export default function ContactPage() {
|
||||
return (
|
||||
<Layout>
|
||||
<Main />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
+18
-112
@@ -1,115 +1,21 @@
|
||||
import Image from "next/image";
|
||||
import localFont from "next/font/local";
|
||||
|
||||
const geistSans = localFont({
|
||||
src: "./fonts/GeistVF.woff",
|
||||
variable: "--font-geist-sans",
|
||||
weight: "100 900",
|
||||
});
|
||||
const geistMono = localFont({
|
||||
src: "./fonts/GeistMonoVF.woff",
|
||||
variable: "--font-geist-mono",
|
||||
weight: "100 900",
|
||||
});
|
||||
import Layout from "@/layouts/main";
|
||||
import H1 from "@/components/lib/layout/H1";
|
||||
import Main from "@/components/pages/Home";
|
||||
import AboutSection from "@/components/pages/Home/(sections)/AboutSection";
|
||||
import Divider from "@/components/lib/layout/Divider";
|
||||
import MySkillsSection from "@/components/pages/Home/(sections)/MySkillsSection";
|
||||
import MyWorkSection from "@/components/pages/Home/(sections)/MyWorkSection";
|
||||
|
||||
export default function Home() {
|
||||
return (
|
||||
<div
|
||||
className={`${geistSans.variable} ${geistMono.variable} grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20 font-[family-name:var(--font-geist-sans)]`}
|
||||
>
|
||||
<main className="flex flex-col gap-8 row-start-2 items-center sm:items-start">
|
||||
<Image
|
||||
className="dark:invert"
|
||||
src="/next.svg"
|
||||
alt="Next.js logo"
|
||||
width={180}
|
||||
height={38}
|
||||
priority
|
||||
/>
|
||||
<ol className="list-inside list-decimal text-sm text-center sm:text-left font-[family-name:var(--font-geist-mono)]">
|
||||
<li className="mb-2">
|
||||
Get started by editing{" "}
|
||||
<code className="bg-black/[.05] dark:bg-white/[.06] px-1 py-0.5 rounded font-semibold">
|
||||
pages/index.tsx
|
||||
</code>
|
||||
.
|
||||
</li>
|
||||
<li>Save and see your changes instantly.</li>
|
||||
</ol>
|
||||
|
||||
<div className="flex gap-4 items-center flex-col sm:flex-row">
|
||||
<a
|
||||
className="rounded-full border border-solid border-transparent transition-colors flex items-center justify-center bg-foreground text-background gap-2 hover:bg-[#383838] dark:hover:bg-[#ccc] text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5"
|
||||
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<Image
|
||||
className="dark:invert"
|
||||
src="/vercel.svg"
|
||||
alt="Vercel logomark"
|
||||
width={20}
|
||||
height={20}
|
||||
/>
|
||||
Deploy now
|
||||
</a>
|
||||
<a
|
||||
className="rounded-full border border-solid border-black/[.08] dark:border-white/[.145] transition-colors flex items-center justify-center hover:bg-[#f2f2f2] dark:hover:bg-[#1a1a1a] hover:border-transparent text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5 sm:min-w-44"
|
||||
href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
Read our docs
|
||||
</a>
|
||||
</div>
|
||||
</main>
|
||||
<footer className="row-start-3 flex gap-6 flex-wrap items-center justify-center">
|
||||
<a
|
||||
className="flex items-center gap-2 hover:underline hover:underline-offset-4"
|
||||
href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<Image
|
||||
aria-hidden
|
||||
src="/file.svg"
|
||||
alt="File icon"
|
||||
width={16}
|
||||
height={16}
|
||||
/>
|
||||
Learn
|
||||
</a>
|
||||
<a
|
||||
className="flex items-center gap-2 hover:underline hover:underline-offset-4"
|
||||
href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<Image
|
||||
aria-hidden
|
||||
src="/window.svg"
|
||||
alt="Window icon"
|
||||
width={16}
|
||||
height={16}
|
||||
/>
|
||||
Examples
|
||||
</a>
|
||||
<a
|
||||
className="flex items-center gap-2 hover:underline hover:underline-offset-4"
|
||||
href="https://nextjs.org?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<Image
|
||||
aria-hidden
|
||||
src="/globe.svg"
|
||||
alt="Globe icon"
|
||||
width={16}
|
||||
height={16}
|
||||
/>
|
||||
Go to nextjs.org →
|
||||
</a>
|
||||
</footer>
|
||||
</div>
|
||||
);
|
||||
return (
|
||||
<Layout>
|
||||
<Main />
|
||||
<Divider />
|
||||
<AboutSection />
|
||||
<Divider />
|
||||
<MySkillsSection />
|
||||
<Divider />
|
||||
<MyWorkSection />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
import Layout from "@/layouts/main";
|
||||
import Main from "@/components/pages/skills";
|
||||
import Divider from "@/components/lib/layout/Divider";
|
||||
import MySkillsSection from "@/components/pages/Home/(sections)/MySkillsSection";
|
||||
|
||||
export default function SkillsPage() {
|
||||
return (
|
||||
<Layout>
|
||||
<Main />
|
||||
<Divider />
|
||||
<MySkillsSection noTitle expand />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import Layout from "@/layouts/main";
|
||||
import Main from "@/components/pages/work";
|
||||
import Divider from "@/components/lib/layout/Divider";
|
||||
import MyWorkSection from "@/components/pages/Home/(sections)/MyWorkSection";
|
||||
|
||||
export default function WorkPage() {
|
||||
return (
|
||||
<Layout>
|
||||
<Main />
|
||||
<Divider />
|
||||
<MyWorkSection noTitle expand />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user