diff --git a/apps/site/src/app/(home)/page.tsx b/apps/site/src/app/(home)/page.tsx
index 452f8f1a..c19f5615 100644
--- a/apps/site/src/app/(home)/page.tsx
+++ b/apps/site/src/app/(home)/page.tsx
@@ -1,7 +1,14 @@
-import { Landing } from "./sections";
+import { Landing, MentorVolunteer } from "./sections";
export default function Home() {
// Show landing section only if still in maintenance,
// otherwise show the rest of the sections
- return process.env.MAINTENANCE_MODE_HOME ? : ;
+ return process.env.MAINTENANCE_MODE_HOME ? (
+
+ ) : (
+ <>
+
+
+ >
+ );
}
diff --git a/apps/site/src/app/(home)/sections/Landing/Landing.module.css b/apps/site/src/app/(home)/sections/Landing/Landing.module.css
index b60a650c..c36dc6db 100644
--- a/apps/site/src/app/(home)/sections/Landing/Landing.module.css
+++ b/apps/site/src/app/(home)/sections/Landing/Landing.module.css
@@ -1,5 +1,5 @@
.landingSection {
- background-image: url("~@/assets/backgrounds/landing-background.jpg");
+ background-image: url("~@/assets/backgrounds/landing-background.png");
background-position: center;
background-repeat: no-repeat;
background-size: cover;
diff --git a/apps/site/src/app/(home)/sections/Landing/Landing.tsx b/apps/site/src/app/(home)/sections/Landing/Landing.tsx
index 926ed952..35851929 100644
--- a/apps/site/src/app/(home)/sections/Landing/Landing.tsx
+++ b/apps/site/src/app/(home)/sections/Landing/Landing.tsx
@@ -11,7 +11,7 @@ import Fireflies from "../../components/Fireflies";
const Landing = () => {
return (
-
+
diff --git a/apps/site/src/app/(home)/sections/MentorVolunteer/MentorVolunteer.tsx b/apps/site/src/app/(home)/sections/MentorVolunteer/MentorVolunteer.tsx
new file mode 100644
index 00000000..adf15d56
--- /dev/null
+++ b/apps/site/src/app/(home)/sections/MentorVolunteer/MentorVolunteer.tsx
@@ -0,0 +1,26 @@
+import Stand from "./Stand";
+import stand1 from "./stand-1.png";
+import stand2 from "./stand-2.png";
+
+const MentorVolunteer = () => {
+ return (
+
+
+
+
+ );
+};
+
+export default MentorVolunteer;
diff --git a/apps/site/src/app/(home)/sections/MentorVolunteer/Stand.tsx b/apps/site/src/app/(home)/sections/MentorVolunteer/Stand.tsx
new file mode 100644
index 00000000..aaa9b68c
--- /dev/null
+++ b/apps/site/src/app/(home)/sections/MentorVolunteer/Stand.tsx
@@ -0,0 +1,50 @@
+import type { ComponentProps } from "react";
+import Image from "next/image";
+import Link from "next/link";
+import Button from "@/lib/components/Button/Button";
+import standBottom from "./stand-bottom.png";
+
+interface StandProps {
+ imageSrc: ComponentProps["src"];
+ header: string;
+ description: string;
+ buttonText: string;
+ buttonHref: ComponentProps["href"];
+}
+
+const Stand: React.FC = ({
+ imageSrc,
+ header,
+ description,
+ buttonText,
+ buttonHref,
+}) => {
+ return (
+
+ );
+};
+
+export default Stand;
diff --git a/apps/site/src/app/(home)/sections/MentorVolunteer/stand-1.png b/apps/site/src/app/(home)/sections/MentorVolunteer/stand-1.png
new file mode 100644
index 00000000..8dcf5e16
Binary files /dev/null and b/apps/site/src/app/(home)/sections/MentorVolunteer/stand-1.png differ
diff --git a/apps/site/src/app/(home)/sections/MentorVolunteer/stand-2.png b/apps/site/src/app/(home)/sections/MentorVolunteer/stand-2.png
new file mode 100644
index 00000000..d2bd8dea
Binary files /dev/null and b/apps/site/src/app/(home)/sections/MentorVolunteer/stand-2.png differ
diff --git a/apps/site/src/app/(home)/sections/MentorVolunteer/stand-bottom.png b/apps/site/src/app/(home)/sections/MentorVolunteer/stand-bottom.png
new file mode 100644
index 00000000..cfb80088
Binary files /dev/null and b/apps/site/src/app/(home)/sections/MentorVolunteer/stand-bottom.png differ
diff --git a/apps/site/src/app/(home)/sections/index.ts b/apps/site/src/app/(home)/sections/index.ts
index 7b020ed8..9c8f965d 100644
--- a/apps/site/src/app/(home)/sections/index.ts
+++ b/apps/site/src/app/(home)/sections/index.ts
@@ -1 +1,2 @@
export { default as Landing } from "./Landing/Landing";
+export { default as MentorVolunteer } from "./MentorVolunteer/MentorVolunteer";
diff --git a/apps/site/src/app/layout.tsx b/apps/site/src/app/layout.tsx
index cfe315b5..d65c5dff 100644
--- a/apps/site/src/app/layout.tsx
+++ b/apps/site/src/app/layout.tsx
@@ -1,6 +1,7 @@
import type { Metadata } from "next";
import "./globals.css";
+import water from "./water.png";
import { Layout } from "@/components/dom/Layout";
export const metadata: Metadata = {
@@ -16,7 +17,12 @@ export default function RootLayout({
}) {
return (
-
+
{/* reference: https://github.com/pmndrs/react-three-next */}
{children}
diff --git a/apps/site/src/app/water.png b/apps/site/src/app/water.png
new file mode 100644
index 00000000..4d321a0b
Binary files /dev/null and b/apps/site/src/app/water.png differ
diff --git a/apps/site/src/assets/backgrounds/landing-background.jpg b/apps/site/src/assets/backgrounds/landing-background.jpg
deleted file mode 100644
index 7313d235..00000000
Binary files a/apps/site/src/assets/backgrounds/landing-background.jpg and /dev/null differ
diff --git a/apps/site/src/assets/backgrounds/landing-background.png b/apps/site/src/assets/backgrounds/landing-background.png
new file mode 100644
index 00000000..863a9fce
Binary files /dev/null and b/apps/site/src/assets/backgrounds/landing-background.png differ
diff --git a/apps/site/src/lib/components/Button/Button.module.css b/apps/site/src/lib/components/Button/Button.module.css
index 7fff22e3..a7d55554 100644
--- a/apps/site/src/lib/components/Button/Button.module.css
+++ b/apps/site/src/lib/components/Button/Button.module.css
@@ -12,6 +12,9 @@
transition:
filter 0.1s ease,
box-shadow 0.1s ease;
+ display: block;
+ width: max-content;
+ margin: 0 auto;
&:hover {
box-shadow: 0px 0px 20px #fffce2;
diff --git a/apps/site/src/lib/components/Button/Button.tsx b/apps/site/src/lib/components/Button/Button.tsx
index fb5ce697..c854fd45 100644
--- a/apps/site/src/lib/components/Button/Button.tsx
+++ b/apps/site/src/lib/components/Button/Button.tsx
@@ -1,21 +1,24 @@
+import type { ComponentProps } from "react";
+import Link from "next/link";
import styles from "./Button.module.css";
+import clsx from "clsx";
interface ButtonProps {
text: string;
- href?: string;
+ href?: ComponentProps["href"];
}
const Button: React.FC = ({ text, href }) => {
if (href) {
return (
-
{text}
-
+
);
}
return (